首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EXCEL VBA公式- Pad a cell

EXCEL VBA公式- Pad a cell
EN

Stack Overflow用户
提问于 2016-04-20 12:53:22
回答 2查看 632关注 0票数 0

我正试图通过VBA & XLS公式给XLS单元贴上垫子,但我却步履蹒跚:

示例:我希望通过一个公式将“- Test”附加到单元格AC2的内容中,然后将该公式粘贴到Col中的所有剩余行:

代码语言:javascript
复制
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

我猜我需要调整公式的语法来附加。我尝试过几种变体,但都没有成功。

有什么建议吗?

注意:下面的公式有效,但只适用于第一行。复制和粘贴简单地将值从X2复制到后续行,而不是公式:

代码语言:javascript
复制
 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
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-20 13:27:02

若要将strTest附加到单元格值,可以使用:

代码语言:javascript
复制
With Range("X2:X" & lastRow)
    .Value2 = .Worksheet.Evaluate("Index(" & .Address & "&""" & strTest & """,)")
End With
票数 1
EN

Stack Overflow用户

发布于 2016-04-20 13:20:26

我认为不是这样的:

代码语言:javascript
复制
Range("AC2:AC2").Formula = "=AC2.value & value(strTest)"

你想要这个

代码语言:javascript
复制
Range("AC2:AC2").Formula = "=AC2.value & value(" & strTest & ")"
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36744439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档