- 帖子
- 471
- 主題
- 121
- 精華
- 0
- 積分
- 579
- 點名
- 0
- 作業系統
- WIN10
- 軟體版本
- OFFICE2019
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2015-4-16
- 最後登錄
- 2023-1-17
|
12#
發表於 2015-7-17 17:30
| 只看該作者
回復 2# GBKEE
突然想到..
用同一個變數即可..不用用到A與Q ,目前已解決~但這方式好像速度慢很多
之前版大提供的方式,一個一個位置去設定速度快上很多!雖然眼都快瞎了。。。- Sub 跳禁忌()
- Dim arr(), str As String, brr() As String, I As Integer, A As Integer
- Dim S As Variant, E As Integer
- str = Sheets("快速輸入").[B3].Value
- For A = 1 To 1000
- arr = Sheets("菜單(勿動)").[c1].CurrentRegion.Rows(A).Value
-
-
-
-
- For I = 2 To UBound(arr, 2) Step 2
- S = Split(str, ",")
- ReDim brr(0 To UBound(S))
- For E = 0 To UBound(S)
- If InStr(arr(1, I), S(E)) Then brr(E) = "禁忌"
- Next
- S = Join(brr, "")
- If S = "" Then
- Sheets("工作表2").Range("B" & A) = arr(1, I - 1)
- Exit For
- End If
- Next
-
- With Sheets("工作表2").Range("B" & A)
- If .Value = "" Then
- 'MsgBox "查不到結果"
- Else
- 'MsgBox "最後有 " & .Value & "為:" & arr(1, I)
- End If
- End With
- Next
- End Sub
複製代碼 |
|