vba - Excel公式加1

标签 vba excel excel-formula

我正在尝试复制并粘贴一些保持格式的单元格,并将它们链接到表格。

目前我有一张 table ,但我从另一张纸上引用它 例如:

=Sheet2!A1  =Sheet2!B1  =Sheet2!C1
=Sheet2!D1  =Sheet2!E1  

我试图一次将其复制 4 行并粘贴多次,这些值将继续保留到当前单元格 ID,但我希望每次将它们增加 1,例如当我粘贴时,我希望它们是:

=Sheet2!A2  =Sheet2!B2  =Sheet2!C2
=Sheet2!D2  =Sheet2!E2

有没有比手动将所有单元 ID 更改为 +1 更快的方法?

谢谢!

最佳答案

选择所需的单元格并在 VBA 中运行以下命令:

Public Sub TestMe()

    Dim myCell  As Range

    For Each myCell In Selection
        If myCell.HasFormula Then myCell.Formula = myCell.Formula & "+1"
    Next myCell

End Sub
<小时/>

如果按的次数太多,可以按以下方法删除最后一个+1:

Public Sub UnTestMe()

    Dim myCell As Range

    For Each myCell In Selection
        If myCell.HasFormula Then myCell.Formula = Left(myCell.Formula, _
                                                Len(myCell.Formula) - 2)
    Next myCell

End Sub
<小时/>

关于@SJR的评论,如果您想更改单元格的引用地址,这是一种可能的解决方法:

Public Sub TestMe()

    Dim myCell As Range

    For Each myCell In Selection
        If myCell.HasFormula Then myCell.Formula = Left(myCell.Formula, _
                                                Len(myCell.Formula) - 1) & 2
    Next myCell

End Sub

只需将&2更改为您要引用的数字即可。

关于vba - Excel公式加1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47439405/

相关文章:

excel - 通过一个动态数组公式排序聚合表

vba - 限制查找/替换区域

ruby - 使用 Ruby CSV::Writer 生成包含换行符的字段

excel - 根据月份中的某天将总和范围加 1

Excel 多变量查找

java - 如何将文件对象插入(嵌入)到 Excel 工作表中

excel - 使用带变量的 Excel 内置函数

sql-server - MS Access 调用 SQL Server 存储过程

excel - 如何仅在存在时禁用数据透视项目?

excel - 如何在用户窗体中将数据传输到同一工作簿中的不同工作表(使用 ComboBox)?