下标超出范围 – 取决于用户

我有一个Excel工作簿,其中有几个macros,其中4个是“设置”macros,将信息写入某些单元格,而最后一个“工具”macros是引用其他macros在运行时写入的单元格的macros。

“工具”macros工作正常。 问题在于“设置”macros。

有2种不同的“设置”macros,其中2个打开文件浏览器,用户可以select“源”和“目的地”文件,然后将文件的path打印到它们各自的单元格中,而另外两个打开“源”文档,以便用户可以突出显示他们想要复制的单元格。

整个过程一直很顺利,直到我的一个同事向我走来,说当他们试图运行打印单元格的范围和位置的2个“Settings”macros时,他们得到了错误。

所有4个“设置”macros代码在这里。

给出问题的两个macros是ChangeDataWithLoopHeaderLocationsWithLoop

错误出现在两个macros的同一行代码中。

SrcPath = Workbooks("Data Tool 2").Worksheets("Data Tool Settings").Cells(6, 3).Value 

错误是#9

下标超出范围。

我到目前为止一直无法重新创build我的机器上的错误,但错误已被另一个同事login到另一台机器重复。

我完全难住了。 请帮忙!

其他信息:

  • 包含所有5个macros的工作簿的名称是“数据工具2”,它位于networking驱动器上。
  • 工作表的名称是“数据工具设置”
  • 我被列为文件的作者。 (不知道是否重要)
  • 该文件不受保护。

几件事情:

1)检查是否所有用户的文件扩展名都显示在文件夹选项下(即Data Tool 2.xlsm)
2)尝试删除工作簿/工作表名称上的空格,以避免隐藏ascii字符
3)检查专用单元格值。 它是否包含一些可能无法读取的字符? (即特定的语言)

将“工作簿”(“数据工具2”)。工作表“更改为表格。 工作正常 – 在多台机器/用户ID上多次testing。