- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
本帖最後由 GBKEE 於 2013-3-9 12:52 編輯
回復 14# 198188
Set Rng = Sh.Columns("D").Find(a, lookat:=xlWhole) 這句只是會找一次
如下可尋找全部- Option Explicit
- Sub Ex()
- Dim A As String, Rng As Range, Sh As Worksheet, Address_First As String
- Dim M As String
- Set Sh = ActiveSheet
- A = "OBL" '尋找的字串
- Set Rng = Sh.Columns("D").Find(A, lookat:=xlWhole) '第一個
- If Not Rng Is Nothing Then
- Address_First = Rng.Address '寫下第一個位址
- Do
- M = IIf(M <> "", M & ",", "") & Rng.Address
- Set Rng = Sh.Columns("D").FindNext(Rng) '繼續尋找下一個
- Loop Until Address_First = Rng.Address '回到第一個位址
- MsgBox M
- Else
- MsgBox "找不到"
- End If
- End Sub
- Sub Ex_1()
- Dim A As String, Rng As Range, Sh As Worksheet, Address_First
- Set Sh = ActiveSheet
- A = "OBL" '尋找的字串
- Set Rng = Sh.Columns("D").Find(A, lookat:=xlWhole) '第一個
- If Not Rng Is Nothing Then
- With Sh.Columns("D")
- .Replace A, "=ABC", xlWhole '修改"尋找的字串" = 沒定義的名稱
- Set Rng = .SpecialCells(xlCellTypeFormulas, xlErrors) '儲存格有錯誤值的特定範圍
- Rng.Value = A '沒定義的名稱 改回 "尋找的字串"
- MsgBox Rng.Address
- End With
- Else
- MsgBox "找不到"
- End If
- End Sub
複製代碼 因為我是想只要訂單號相同,而且這些訂單號只要有一列有OBL三個字,就出現OBL否則空格
不了解你檔案內容 無法回答 |
|