gpt4 book ai didi

excel - 用于更改选项卡名称的 VBA/宏脚本

转载 作者:行者123 更新时间:2023-12-04 22:16:17 24 4
gpt4 key购买 nike

我已经对最近提供的脚本(发布在最底部)帮助应用了更改,它正在工作并在下面列出。 (感谢彼得B)
现在对于每个处理的文件,我想:

  • 将选项卡/工作表名称的名称更改为 excel 文件名
    (试过ActiveSheet.Name = ActiveWorkbook.Name) 我收到一条错误消息,提示“我无法分配只读属性”

  • 我是 vba 的新手,相信一旦我可以了解 DIM 的这种用法,接下来的步骤就会更加清晰。
    我的感觉是,在我移动到下一个要处理的文件之前,我需要使用尺寸名称,就在我尝试过的下面……但它不起作用。
    谢谢!
        'not working!!!
    'File #1
    wb_source.Name = ActiveWorkbook.Name
    wb_source.Sheets("xAccountARAgingPatient.xlsx").Copy
    after:=wb_target.Sheets(wb_target.Sheets.Count)
    Application.DisplayAlerts = False
    wb_source.Close
    Application.DisplayAlerts = True
        'working
    Sub wwwww()
    Dim wb_source As Workbook
    Dim wb_target As Workbook

    Application.DisplayAlerts = False

    Set wb_source = Workbooks.Open("C:\Test\xAccountARAgingPatient.xlsx")
    Set wb_target = Workbooks.Open("c:\Test\MEBIllingOffice.xlsm")

    'assumes the sheet name is "xAccountARAgingPatient.xlsx" note - sheet names must be
    unique within target
    'File #1
    wb_source.Sheets("xAccountARAgingPatient.xlsx").Copy
    after:=wb_target.Sheets(wb_target.Sheets.Count)
    wb_source.Close

    'File #2
    Set wb_source = Workbooks.Open("C:\Test\xAccountARAgingPayer.xlsx")
    wb_source.Sheets("xAccountARAgingPayer.xlsx").Copy
    after:=wb_target.Sheets(wb_target.Sheets.Count)
    wb_source.Close

    'File #3'
    Set wb_source = Workbooks.Open("C:\Test\xCashAgingAnalysis.xlsx")
    wb_source.Sheets("xCashAgingAnalysis.xlsx").Copy
    after:=wb_target.Sheets(wb_target.Sheets.Count)
    wb_source.Close


    'wb_target.Save
    'wb_target.Close

    Application.DisplayAlerts = True
    End Sub

    最佳答案

    从您的评论听起来像是您正在尝试重命名工作表。
    然而,您的代码看起来像是试图通过将 Workkbook Name 分配给 Work Book 名称的只读值来重命名工作簿。肯定会令人困惑-并且肯定会导致该错误
    我从您的示例中假设您希望重命名 wb_source 中的工作表。
    目前尚不清楚您何时拆分代码以了解当时哪个工作簿处于事件状态。
    尝试将名称分配给事件工作簿的工作表

    ActiveWorkbook.ActiveSheet.Name = wb_source.Name
    或者,如果它实际上是源文档 - 只需使用它,这样您就不需要知道它是否处于事件状态。
    wb_source.ActiveSheet.Name = wb_source.Name

    关于excel - 用于更改选项卡名称的 VBA/宏脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68820753/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com