返回列表 上一主題 發帖

vba find 多條件 求教

vba find 多條件 求教

安安! 大家好  
我想請教各位大大  關於FIND的VBA方法

我的EXCEL表 左邊有一堆 數據   希望用右的 4字開頭的開頭7個號碼來找 左邊的資料  

我現在的方法 是用CTRL+F 來輸入 右邊4字開頭 的7個號碼來找 左邊的資料  希望能變成VBA   去把資料找到 就  複製一個  在旁邊的列  

比如圖片這樣  

FIND.png
2017-10-20 21:22



附上附件 我嘗試用錄製巨集的方式 卻發現 FIND 的條件 只有一個 只可以在WHAT: 那輸入一個     想不到怎麼一次過去處理     求大大們指教 :Q   

find.rar (2.14 KB)
請詳閱 論壇版規愛惜帳號,一起創造美好的學習討論空間。

求大大指教  教我怎麼只拿取xx 前的數字 至空格  也可以啊 .......

TOP

你的資料沒有規則,很難用VBA完成。
請詳閱 論壇版規愛惜帳號,一起創造美好的學習討論空間。

TOP

回復 2# adrian_9832
可以用Split指令
Sub ex()
Dim x
x = Split(Sheets(1).Range("a1"), "/") 'PN/NN NUMBERING:24312(0-1)XX/4100602(0-1)XX輸入在Range("a1")當示範,利用字串內的"/"將字串拆開
x = Split(x(2), "XX")  '利用"XX"將4100602(0-1)取出
MsgBox x(0)
End Sub
請詳閱 論壇版規愛惜帳號,一起創造美好的學習討論空間。

TOP

本帖最後由 adrian_9832 於 2017-11-5 19:17 編輯

回復 4# jcchiang


    大大 ! 請問Split(x(2)   Split(x(1)  怎麼用的
還有MSGBOX X(0)
請詳閱 論壇版規愛惜帳號,一起創造美好的學習討論空間。

TOP

回復 5# adrian_9832
陣列形式
PN/NN NUMBERING:24312(0-1)XX/4100602(0-1)XX
當用"/"將字串拆開
x(0)=PN
x(1)= NN NUMBERING:24312(0-1)XX
x(2)=4100602(0-1)XX
在將x(2)用"XX"拆開
x(0)=4100602(0-1)
請詳閱 論壇版規愛惜帳號,一起創造美好的學習討論空間。

TOP

回復 1# adrian_9832

參考看看
這程式未考慮找尋NN但只差最後一字的部分,會覆蓋前面已填入過
  1. Public Sub text()
  2. Dim FindRange As Range, FindString As Range
  3. lastRow = Cells(ActiveSheet.Rows.Count, 2).End(xlUp).Row
  4. Set FindRange = Worksheets(1).Range(Cells(1, 2), Cells(lastRow, 2))
  5. Set FindString = Worksheets(1).Range(Cells(9, 13), Cells(Cells(ActiveSheet.Rows.Count, 13).End(xlUp).Row, 13))

  6. For Each a In FindString
  7.     a1 = Left(a.Value, Len(a.Value) - 1)
  8.     Set c = FindRange.Find(a1, LookIn:=xlValues)
  9.    
  10.     If Not c Is Nothing Then
  11.         firstAddress = c.Address
  12.         Do
  13.             Cells(c.Row, 8).Value = Cells(a.Row, a.Column - 1).Value
  14.             Cells(c.Row, 9).Value = a.Value
  15.             Set c = FindRange.FindNext(c)
  16.         Loop While Not c Is Nothing And c.Address <> firstAddress
  17.     End If
  18. Next
  19. End Sub
複製代碼
請詳閱 論壇版規愛惜帳號,一起創造美好的學習討論空間。

TOP

樓上大大們已經好猛了    謝謝各位的幫助
請詳閱 論壇版規愛惜帳號,一起創造美好的學習討論空間。

TOP

        靜思自在 : 【行善要及時】行善要及時,功德要持續。如燒開水一般,未燒開之前千萬不要停熄火候,否則重來就太費事了。
返回列表 上一主題