excel - 如果代码在不同的文件中,如何在目标文件中进行更改

标签 excel vba

我的代码写在我的宏工作簿中。我每次都必须使用相同的步骤处理不同的文件。所以理想情况下,我需要一个宏文件中的宏,而我的目标文件会有所不同。下面是我在宏文件中的代码。

    Sub EEBalanceSummary()
    On Error Resume Next
    Dim FilePath As String
    FilePath = Application.GetOpenFilename
    Range("B6").Select    
    End Sub
我从我的宏文件中运行此代码。它要求我选择文件夹,然后选择我需要处理的文件。现在,不是在我新打开的目标文件中选择“B6”单元格,而是在同一个宏文件中选择“B6”。如何让代码在我的目标文件上工作?

最佳答案

您的代码 Range("B6").SelectApplication.ActiveWorkbook.ActiveSheet.Range("B6").Select 的缩写.
您想改为指定特定的打开工作簿和工作表,例如:

Workbooks("Example.xlsx").Sheets("Tabname").Range("B6").Select
您还可以研究:
  • 如何、何时以及为何避免使用 .Select .
  • 为工作簿、工作表和范围使用变量或常量(以避免在代码中的命令中内联输入它们的名称或地址)。
  • ThisWorkbook 之间的区别, ActiveWorkbookWorkbooks()
  • 关于excel - 如果代码在不同的文件中,如何在目标文件中进行更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69094627/

    相关文章:

    vba - 保护/取消保护图表工作表

    excel - 简单查询复杂答案 - 如何为简单公式选择 RowA6-Row(最后一个非空白)

    vba - 评估 Excel VBA bool 条件(不是公式)

    vba - 在 vba (MS Access) 中捕获操作查询警告

    vba - Excel VBA函数从另一个工作簿获取数据

    vba - 循环崩溃Excel VBA

    excel - 来自 2 列或更多列的 VBA 唯一值

    c++ - 如何在 VBA/Excel 中创建一个字符串数组并将其发送到 C++ DLL 以便它可以在 DLL 中迭代

    excel - 由于页面布局在宽度上添加了额外的像素,Word Wrap 在打印 Excel 表时添加了空白行

    vba - 无法弄清楚 do-while 和 do-until 循环