返回列表 上一主題 發帖

[發問] 檔案過大~函數有沒有辦法轉成VBA

回復 1# gn00487767

一鍵搞定
  1. Private Sub CommandButton2_Click()
  2. Dim Ar()
  3. With Sheets("名單")
  4.    For Each a In .Range(.[E2], .[E2].End(xlDown)).SpecialCells(xlCellTypeConstants)
  5.       ReDim Preserve Ar(s)
  6.       n = Application.HLookup(a, Array(Array("第一類", "第二類", "第三類", "第四類", "第五類"), Array(5, 3, 1, 0, 8)), 2, 0)
  7.       y = DateAdd("m", n, a.Offset(, 1))
  8.       Ar(s) = Array(y, n, IIf(Date > y, "有效", "無效"))
  9.       s = s + 1
  10.     Next
  11. End With
  12. ay = Application.Transpose(Application.Transpose(Ar))
  13. With Sheets("驗證")
  14. .Range(.[B2], .[B2].End(xlDown)).ClearContents
  15. .[B2].Resize(s, 1) = Application.Index(ay, , 1)
  16. .Range(.[E2], .[E2].End(xlDown)).ClearContents
  17. .[E2].Resize(s, 1) = Application.Index(ay, , 2)
  18. End With
  19. With Sheets("結果")
  20. .Range(.[B2], .[B2].End(xlDown)).ClearContents
  21. .[B2].Resize(s, 1) = Application.Index(ay, , 3)
  22. End With
  23. End Sub
複製代碼
學海無涯_不恥下問

TOP

        靜思自在 : 自己害自己,莫過於亂發脾氣。
返回列表 上一主題