標題:
[發問]
擷取符合條件的字串文字
[打印本頁]
作者:
loyyee
時間:
2011-11-23 22:17
標題:
擷取符合條件的字串文字
本帖最後由 loyyee 於 2011-11-24 22:28 編輯
請問各位大大,如何由檔案中"A欄"字串中,擷取符合條件的字串文字於"B~D欄"
[attach]8610[/attach]
作者:
register313
時間:
2011-11-23 23:52
回復
1#
loyyee
作者:
loyyee
時間:
2011-11-24 00:23
標題:
擷取符合條件的字串文字
回復
2#
register313
可以用了,感謝您~
作者:
GBKEE
時間:
2011-11-24 08:09
回復
2#
register313
簡化一下
Sub Ex()
Dim R As Range
Range("B2:D500").ClearContents
For Each R In Range("a2:a500")
If InStr(R, "OO") And InStr(R, "PP") Then
R.Offset(0, 3).Value = "OO+PP"
ElseIf InStr(R, "OO") Then
R.Offset(0, 1).Value = "OO"
ElseIf InStr(R, "PP") Then
R.Offset(0, 2).Value = "PP"
End If
Next
End Sub
複製代碼
作者:
register313
時間:
2011-11-24 08:36
回復
4#
GBKEE
感謝版大
小弟只會VBA的簡單語法 每次程式碼總是寫很長
學會更多語法 可讓程式碼易於閱讀也節省時間
希望還有機會讓版大指導
作者:
loyyee
時間:
2011-11-24 22:34
回復
4#
GBKEE
感謝版大與register313熱心解答。
再延伸問題:如果"A欄"、"B欄"有二個不同字串,
要在"E欄"擷取符合條件的字串文字時,該如何修改巨集?
[attach]8621[/attach]
作者:
register313
時間:
2011-11-24 23:48
回復
6#
loyyee
倏改GBKEE版大之"擷取符合條件的字串"程式而來
作者:
loyyee
時間:
2011-11-25 00:09
回復
7#
register313
感謝,給您一個讚啦!
作者:
GBKEE
時間:
2011-11-25 08:29
本帖最後由 GBKEE 於 2011-11-25 08:31 編輯
回復
7#
register313
另一寫法
Sub Ex()
Dim AR, R As Range, S , E
Range("E2:E500").ClearContents
AR = Split(Mid(Replace([E1], "之製程", ""), 2), "、")
For Each R In Range("A2:A500")
S = Split(R & "," & R.Offset(0, 1), ",")
For Each E In S
If Not IsError(Application.Match(E, AR, 0)) Then
R.Offset(0, 4) = R.Offset(0, 4) & IIf(R.Offset(0, 4) = "", "", "+") & E
End If
Next
Next
End Sub
複製代碼
作者:
register313
時間:
2011-11-25 09:17
回復
9#
GBKEE
感謝GBKEE版大
這次使用了Split Mid Replace Match...函數
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)