2
我創建了一個可在電子表格中工作但不在VBA中的公式。我在這裏粘貼的只是整個公式的一個子集;總共超過3000個字符運行時錯誤1004將公式放入單元格
如果我運行它,它的工作原理
LastRow = Range("a" & Rows.Count).End(xlUp).Row
Range("cI2:cI" & LastRow).Formula = "=CONCATENATE(CONCATENATE(MID(""00"",1,2-LEN(A2)),A2))"
如果我跑,我得到運行時錯誤
LastRow = Range("a" & Rows.Count).End(xlUp).Row
Range("cI2:cI" & LastRow).Formula = "=CONCATENATE(CONCATENATE(MID(""00"",1,2-LEN(A2)),A2)), " & _
"CONCATENATE(MID(""00000000"",1,8-LEN(B2)),B2),"" "", CONCATENATE(C2,MID("" "",1,12-LEN(C2))),CONCATENATE(MID(""00"",1,2-LEN(D2)),D2) "
這可能是由於錯誤地使用了''',這也是VBA中字符串的分隔符。如果你想寫這個:'「= IF(A1 =」test「,True,False)」'in VBA,把它寫成''= IF(A1 =「+ chr(34)+」test「+ chr(34)+」,True,False)「'所以你確保你不會遇到這種錯誤。 –
是的,它做到了,謝謝。 –