【发布时间】:2016-06-13 19:10:52
【问题描述】:
我有一个包含 4 列的工作表,我编写了一个宏来将公式放在 A + B 列中,这取决于 D 列中的内容,然后复制并粘贴为值以启用对这些列的过滤。我的问题是每周 D 列会变长。我不想在我的宏中不断更改 A + B (A2:A69422) 范围内的值,其中 69422 是 D 列中最后使用的单元格。
Worksheets("salesinfo").Range("B2").Formula = "= MID(D3,3,5)"
Range("B2").Select
Selection.AutoFill Destination:=Range("B2:B69422")
Range("B2:B69422").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.Value = Selection.Value
Range("A2").Formula = "= VLOOKUP(B2,[Data.xlsb]Stores!$A:$X,4,0)"
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A69422")
Range("A2:A69422").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Workbooks("Data.xlsb").Close SaveChanges:=False
Application.CutCopyMode = False
Range("A2").Select
【问题讨论】:
标签: vba excel excel-formula vlookup