gpt4 book ai didi

vba - Excel 中的宏(VBA)在同事 PC 上失败,但在同事登录时在我的电脑上工作

转载 作者:行者123 更新时间:2023-12-04 20:58:07 25 4
gpt4 key购买 nike

我正在开发 VBA 工具来自动化一系列冗长的管理任务,代码在以下情况下运行良好。

  • 当我登录到我的电脑
  • 当我的同事登录我的电脑时
  • 当我登录我的同事 PC

  • 但是,当我的同事在她的 PC 上运行它时,它无法正确完成。

    它失败的具体领域是:
    'creates 2 dims for location of the two files that need opening based on the critera set on the home page

    Dim newdata As String
    newdata = Range("f11").Value
    Dim olddata As String
    olddata = Range("f12").Value
    Dim fileextension As String
    fileextension = Range("f14").Value

    Dim fulllocationolddata As String
    fulllocationolddata = Range("f13") & olddata & fileextension

    Dim fulllocationnewdata As String
    fulllocationnewdata = Range("f13") & newdata & fileextension


    'open file containing OLDDATA c&p previous days data to the conversion tool
    'then shuts the old data workbook

    Workbooks.Open Filename:=fulllocationolddata
    Workbooks(olddata).Activate
    Worksheets("sheet1").Select
    Range("A1").CurrentRegion.Copy

    Workbooks("Stockfile Conversion Tool.xlsm").Activate
    Sheets("OLD STOCK").Activate
    Range("A3").Select
    Selection.PasteSpecial

    Workbooks(olddata).Activate
    Worksheets("sheet1").Select

    Workbooks(olddata).Close SaveChanges:=False

    最后一行 (Workbooks(olddata).Close SaveChanges:=False) 不关闭工作簿,然后在宏中我打开另一个同名工作簿,但由于它已经打开,它只是激活窗口和其余代码碎成片。

    如果有人对我出错的地方有任何想法,将不胜感激。

    提前感谢你的帮助

    计划303

    最佳答案

    在这里对答案发表评论:

    是否Workbooks("Name of the Workbook")是否工作取决于 中的设置系统控制 - 文件夹选项 - 查看 - [ x ] 隐藏已知文件类型的扩展名 .

    如果设置了,则 Excel 的文件扩展名 .xlsx , .xlsm , ... 是 不是 在资源管理器或其他文件列表中可见。只有 Excel 文件的文件名可见。如果是,那么 Workbooks("Name of the Workbook")将工作。

    如果 Hide extensions for known file types未设置,则 Excel 的文件扩展名 .xlsx , .xlsm , ... 在资源管理器或其他文件列表中可见。如果是,那么 Workbooks("Name of the Workbook")不是 工作。那么只有 Workbooks("Name of the Workbook.xlsx") , 命名为 扩展,将工作。

    但是Workbooks("Name of the Workbook.xlsx")如果 Hide extensions for known file types 也可以使用放。因此,应首选使用全名包含扩展名。

    所以对于具体的问题:

    如果 olddata只包含工作簿的名称而不是文件扩展名,然后 Workbooks(olddata)仅在 Hide extensions for known file types 时有效设置在 Folder Options .如果未设置该选项并且文件扩展名在资源管理器中可见,它将失败。但是Workbooks("Stockfile Conversion Tool.xlsm")将始终独立于 Hide extensions for known file types设置与否。所以Workbooks(olddata & fileextension)如果 olddata 也应该始终有效仅包含工作簿名称和 fileextension包含 .xlsx例如。

    关于vba - Excel 中的宏(VBA)在同事 PC 上失败,但在同事登录时在我的电脑上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42434979/

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