返回列表 上一主題 發帖

[發問] 搜尋代號後,尋找對應列數的儲存格

回復 4# 軒云熊


    看了准大版主常使用此方法,字典加入""字串,可以加快執行速度
    如有不對請各位前賢指教,感謝。

TOP

回復 3# samwang


感謝 samwang 前輩的指導 小弟受益良多  請問  samwang前輩  T & ""  為甚麼要串連空白  & "" 的用意是甚麼
可否說明一下  我不太理解 因為字典不是那麼直觀

TOP

回復 1# abc9gad2016

請測試看看,感謝。

Sub tt()
Set xD = CreateObject("Scripting.Dictionary")
T = Sheets("尋找").[A2]
xD(T & "") = ""
Arr = Range([工作表1!T2], [工作表1!A65536].End(3))
For i = 2 To UBound(Arr)
    If xD.Exists(Arr(i, 1) & "") Then
        For j = 2 To 19
            If Arr(i, j) <> "" Then: M = M + 1: Arr(1, M) = Arr(1, j)
        Next
    End If
Next
If M > 0 Then Sheets("尋找").[B2].Resize(1, M) = Arr
End Sub

TOP

回復 1# abc9gad2016
這是參考  jcchiang 大大的寫法 有空看看是不是這樣 感謝
  1. Public Sub 尋找相對欄位練習()

  2.     Arr = [工作表1!A1].CurrentRegion
  3.     Set xD = CreateObject("Scripting.Dictionary")
  4.    
  5.     For Y = 1 To UBound(Arr, 2)
  6.         xD(Arr(2, Y)) = Y
  7.     Next Y
  8.    
  9.     For X = 3 To UBound(Arr, 1)
  10.         For Y = 2 To UBound(Arr, 2)
  11.             If Arr(X, 1) = [尋找!A2] And Arr(X, Y) <> "" Then
  12.                 E = E + 1
  13.                 Sheets(2).Cells(2, 1 + E) = Arr(2, xD(Arr(2, Y)))
  14.             End If
  15.         Next Y
  16.     Next X

  17. End Sub
複製代碼

TOP

        靜思自在 : 脾氣嘴巴不好,心地再好也不能算是好人。
返回列表 上一主題