返回列表 上一主題 發帖

求助 VBA Vlook 要執行好久

回復 1# JOSH


    個人建議..
如果您要用VBA 寫法
可以不用拘束於 "=XXXXXX"
直接判斷就好..
例如
        For i = 4 To ActiveSheet.Range("a4").CurrentRegion.Rows.Count
                       If (InStr(1, 工作表1.Cells(i, 1), "搜尋") >= 1) Then
                     工作表1.Cells(i, 7) = "find"
                     工作表1.Cells(i, 11) = InStr(工作表1.Cells(i, 1), "搜尋")
                     s = s + 1
                       else
                        工作表1.cells(i,7)=""
                End If

         next

  多做多想多學習,少看少錯少迷途

  多做=多多練習,多多編寫。
  多想=想想為什麼人家程式要那樣寫,如果換成自己,又會怎寫。
  多學習=學習人家的發問並解答,學習人家的寫法

  少看=只看不做也枉然

TOP

回復 3# JOSH

Sub h()

For i = 4 To ActiveSheet.Range("a4").CurrentRegion.Rows.Count
If (InStr(1, Summary!.Cells(i, 1), "=VLOOKUP(""1002""&RC[-3],List!C[-3]:C[13],8,FALSE)") >= 1) Then
Summary!.Cells(i, 7) = "find"
Summary!.Cells(i, 11) = InStr(Summary!.Cells(i, 1), "=VLOOKUP(""1002""&RC[-3],List!C[-3]:C[13],8,FALSE)")
s = s + 1
Else
Summary!.Cells(i, 7) = ""
                End If

         Next

End Sub

Summary! .cells(XXXXXXXXXXXX
改成 Summary.cells(XXXXXXXXXXXXXXX

  多做多想多學習,少看少錯少迷途

  多做=多多練習,多多編寫。
  多想=想想為什麼人家程式要那樣寫,如果換成自己,又會怎寫。
  多學習=學習人家的發問並解答,學習人家的寫法

  少看=只看不做也枉然

TOP

        靜思自在 : 【停滯不前,終無所得】人都迷於尋找奇蹟,因而停滯不前;縱使時間再多、路再長,也了無用處,終無所得。
返回列表 上一主題