Vba 尝试遍历行,并用=TEXT格式连接行末尾的单元格,我得到一个1004错误。
我正在使用一个工作表,并试图通过VBA连接单元格,但是我必须以非常特定的方式输出,因为每个项目都必须位于字符串中的特定位置。我已成功获取此函数,以便在excel中获得所需的结果:Vba 尝试遍历行,并用=TEXT格式连接行末尾的单元格,我得到一个1004错误。,vba,excel,Vba,Excel,我正在使用一个工作表,并试图通过VBA连接单元格,但是我必须以非常特定的方式输出,因为每个项目都必须位于字符串中的特定位置。我已成功获取此函数,以便在excel中获得所需的结果: '=CONCATENATE(RC8,RC17,TEXT(RC4,"0000000000000 "), [RC9," ",TEXT(RC7,"00000")," ",TEXT(MID(RC3,7,9),"00000000 "),"FB4852"," ","01"," ",TEXT(RC2,"000
'=CONCATENATE(RC8,RC17,TEXT(RC4,"0000000000000 "), [RC9," ",TEXT(RC7,"00000")," ",TEXT(MID(RC3,7,9),"00000000 "),"FB4852"," ","01"," ",TEXT(RC2,"0000000000000 "))
然而,当我将其插入到一些代码中,并不得不添加大量额外的引号以使其进行编译,从而将此函数添加到行的最后一个单元格中,并连接该行中所有选定的数据时,它开始给我1004个错误。我已附上我的子下面,任何帮助,你们都可以提供这个失去了新的VBA编码器将是可怕的。提前谢谢
Sub gpFormat()
Dim sh As Worksheet
Dim lastRow As Long
Set sh = ActiveSheet
lastRow = sh.Cells(sh.Rows.Count, 1).End(xlUp).Row
sh.Range(sh.Cells(2, 18), sh.Cells(lastRow, 18)).FormulaR1C1 = "=CONCATENATE(RC8,RC17,TEXT(RC4,""0000000000000 ""), [RC9,"" "",TEXT(RC7,""00000""),"" "",TEXT(MID(RC3,7,9),""00000000 ""),""FB4852"","" "",""01"","" "",TEXT(RC2,""0000000000000 ""))"""
用解决方案更新
字符串末尾有两个额外的字符,只需删除即可
Sub gpFormat()
Dim sh As Worksheet
Dim lastRow As Long
Set sh = ActiveSheet
lastRow = sh.Cells(sh.Rows.Count, 1).End(xlUp).Row
sh.Range(sh.Cells(2, 18), sh.Cells(lastRow, 18)).FormulaR1C1 = "=CONCATENATE(RC8,RC17,TEXT(RC4,""0000000000000 ""),RC9,"" "",TEXT(RC7,""00000""),"" "",TEXT(MID(RC3,7,9),""00000000 ""),""FB4852"","" "",""01"","" "",TEXT(RC2,""0000000000000 ""))"
End Sub
祝你好运
先前的答复
看来你没有打错字
尝试将[RC9]更换为RC9
祝你好运哎呀,我的糟糕。拼写错误被纠正了,但是1004拒绝仍然被抛出。