在Excel VBA函数中放置一个variables时出错

Sub airtableCleaner() Dim x As Integer Dim argCounter As Integer Dim A As String Dim B As String Dim folderLocation As Variant Dim Answer As VbMsgBoxResult 'Ask user if they want to run macro Answer = MsgBox("Do you want to run this macro? Please use airtable Download as CSV - Column 1: Primary key, Column 2: Airtable Linkz", vbYesNo, "Run Macro") If Answer = vbYes Then folderLocation = Application.InputBox("Enter a folder location where your image assets will be") 'Cleanup to just amazons3 dl.airtable links Columns("B:B").Select Selection.Replace What:="* ", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:=")", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False 'Count Cells Range("B2").Activate Do If ActiveCell.Value = "" Then Exit Do ActiveCell.Offset(1, 0).Activate argCounter = argCounter + 1 Loop 'Copy Image Links to new cells to format in Column C Columns("B:B").Select Selection.Copy Columns("C:C").Select ActiveSheet.Paste Application.CutCopyMode = False 'Clean up links to only have names in Column C Selection.Replace What:="https://dl.airtable.com/", Replacement:="", _ LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:= _ False, ReplaceFormat:=False 'Create Batch on Column D Range("D2").Select ActiveCell.FormulaR1C1 = _ "=CONCATENATE(""COPY "",CHAR(34),RC[-1],CHAR(34),"" "", CHAR(34), [" & folderLocation & "],RC[-3],"".png"",CHAR(34))" Range("D2").Select Selection.AutoFill Destination:=Range("D2:D9") Range("D2:D9").Select 'Delete header row 1 information Rows("1:1").Select Selection.Delete Shift:=xlUp 'Repaste values back into column D removing formulas Columns("D:D").Select Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.CutCopyMode = False End If End Sub 

我有这套excel VBA代码。 我收到一个错误

运行时错误“1004”应用程序定义或对象定义的错误

在这条线上

"=CONCATENATE(""COPY "",CHAR(34),RC[-1],CHAR(34),"" "", CHAR(34), [" & folderLocation & "],RC[-3],"".png"",CHAR(34))"

我一直在设置folderLocationvariables值为c:\doge并build立一个反映这个文件的文件夹

我的代码工作正常,直到我在Excel函数中引入了一个variables

我在这里做错了什么?

编辑

这是我正在使用的原始公式

=CONCATENATE("COPY ",CHAR(34),C5,CHAR(34)," ", CHAR(34), "c:\doge\",A5,".png",CHAR(34))

其中c:\doge\是我想要input用户input的地方。

这是你正在尝试?

 folderLocation = "c:\doge\" Range("D2").Formula = "=CONCATENATE(""COPY "",CHAR(34),C5,CHAR(34),"" "", CHAR(34), " & _ Chr(34) & folderLocation & Chr(34) & ",A5,"".png"",CHAR(34))"