- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
5#
發表於 2012-1-27 07:16
| 只看該作者
回復 4# dino1978
還有可簡化- Private Sub CommandButton10_Click()
- ASlotRemove [C12] '傳送參數MyText : [C12]
- End Sub
- Private Sub CommandButton11_Click()
- ASlotRemove [C13] '傳送參數MyText : [C13]
- End Sub
- Private Sub CommandButton12_Click()
- ASlotRemove [C14] '傳送參數MyText : [C14]
- End Sub
複製代碼- Sub SlotRemove(ByVal MyText As Range) '接收參數 MyText
- Application.ScreenUpdating = False
- Dim Rng As Range, F_Address As String, TheFind As String, a As Range
- 'MyText = [C12] ' Trim(InputBox("請輸入要尋找的值:"))
- If MyText <> "" Then
- Set Rng = Sheet3.Range("A1").CurrentRegion.EntireColumn.Find(MyText, lookat:=xlWhole)
- If Not Rng Is Nothing Then
- F_Address = Rng.Address
- Do
- TheFind = IIf(TheFind = "", Rng.Address(0, 0), TheFind & " " & Rng.Address(0, 0))
- Set Rng = Sheet3.Range("A1").CurrentRegion.EntireColumn.FindNext(Rng)
- Loop Until F_Address = Rng.Address
- End If
- Else: GoTo err2
- End If
- If TheFind <> "" Then
- If Rng Is Nothing Then
- GoTo err
- Else
- Sheet2.Range("A65536").End(xlUp).Offset(1) = Rng
- With Rng.Resize(1, 3)
- .Delete xlShiftUp
- End With
- With Range("B12")
- .Resize(1, 2).ClearContents
- .ClearContents
- .Offset(, 1).Validation.Delete
- End With
- End If
- Else
- err:
- MsgBox "沒有找到 " & MyText
- err2:
- End If
- TheFind = ""
- Application.ScreenUpdating = True
- End Sub
複製代碼 |
|