繁体   English   中英

EXCEL VBA公式-填充单元格

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM