我有我记录的Vlookup公式,以便用我的变量将其输入到我的VBA代码中。不知何故,其中一个变量对我的公式不起作用。有时整数变量类型中的lastcol
是13而不是12,有时它是空的,我得到
运行时错误1004。
我不确定我是否已将变量输入到代码中的公式中。 vlookup从Visual工作表(VisualWS变量)获取其数据。
这是我被困的代码:
Public myExtension As String
Public FullPath As String
Public VisualWB As Workbook
Public VisualWS As Worksheet
Public LR As Long
Public lastcol As Integer
Public MonCol As Integer
Public Table As Range
Public SigilDes As Integer
Public LR_Over As Long
Sub Analyze_1()
Call initialize
With OverWS
LR_Over = .Cells(Rows.Count, "A").End(xlUp).Row
.Range("M1").Value = "workdays"
.Range("M2:M" & LR_Over).FormulaR1C1 = "=VLOOKUP(RC[-12],visual!R2C1:R " & LR & " C " & lastcol & "," & lastcol & ",FALSE)"
End With
这是初始化子:
Sub initialize()
Set MainWB = ThisWorkbook
Path = ThisWorkbook.Path
Set ListsWS = MainWB.Worksheets("Lists")
Set VisualWS = MainWB.Worksheets(4)
Set OverWS = MainWB.Worksheets(2)
Set DoubleWS = MainWB.Worksheets(3)
MonthName = UserForm1.ListOfMonths.Value
MainWB.Worksheets(1).Range("F2").Value = MonthName
lastcol = VisualWS.UsedRange.Columns.Count
LR = VisualWS.Cells(Rows.Count, "A").End(xlUp).Row
End Sub
答案 0 :(得分:2)
Sub Analyze_1()
Call initialize
With OverWS
LR_Over = .Cells(Rows.Count, "A").End(xlUp).Row
.Range("M1").Value = "workdays"
.Range("M2:M" & LR_Over).FormulaR1C1 = "=VLOOKUP(RC[-12],visual!R2C1:R" & LR & "C" & lastcol & "," & lastcol & ",FALSE)"
End With
End Sub
公式中的空格是问题