簡體   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