[英]EXCEL VBA Formula - Pad a cell
我试图通过VBA和XLS公式填充XLS单元格,但我绊脚石:
示例:我想通过公式在单元格AC2的内容后附加“-测试”,然后将该公式粘贴到Col AC中所有其余行:
lastRow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row
strTest = " - Test"
'append
Range("AC2:AC2").Formula = "=AC2.value & value(strTest)"
'then cut and paste
Range("AC2").Select
Selection.Copy
Range("AC2:A" & lastRow).Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
我猜我需要调整要附加的公式的语法。 我尝试了几种变体,但均未成功。
有什么建议么?
注意:以下公式适用,但仅适用于第一行。 复制并粘贴只是将VALUE从X2复制到后续行,而不是公式:
Range("X2:X2").Formula = Range("AC2:AC2").Value & strTest
Range("X2").Select
Selection.Copy
Range("X2:X" & lastRow).Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
要将strTest
附加到单元格值,可以使用:
With Range("X2:X" & lastRow)
.Value2 = .Worksheet.Evaluate("Index(" & .Address & "&""" & strTest & """,)")
End With
我认为除了:
Range("AC2:AC2").Formula = "=AC2.value & value(strTest)"
你要这个:
Range("AC2:AC2").Formula = "=AC2.value & value(" & strTest & ")"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.