为什么使用以下代码出现“运行时错误'9':下标超出范围。错误?

时间:2020-04-06 21:00:17

标签: range runtime-error runtime subscript

这是我的宏的开始。幸运的是(?)它几乎立即发生。当我在办公室时,此宏工作正常,但现在我在家工作,并且停止工作。另一种可能性是,我必须立即重命名工作表,因为提供工作表的人开始给我提供的工作表的名称与以前的名称不同(现在,它们以前被称为“ HR1角色冲突”,当时它们被称为“ HR1”)。

这是导致错误的行/行: ActiveWorkbook.Worksheets(“ HR1”)。ListObjects(Worksheets(“ HR1”)。ListObjects.Count).Name =“ SODRPTHR1”

这是直到上一行的整个宏:

公共SODDate作为变体 公开SODFY作为变体

Sub SODSeparateEmailSave() 重新开始: ' 'SeparateEmailSave宏 '按园区分开,通过电子邮件发送园区特定的工作簿,然后将园区特定的文件保存到新目录 '

' 重启1: Application.DisplayAlerts = False SODDate = InputBox(“请以以下格式输入报告日期:YYYY.MM.DD”) 'MsgBox“测试SODDate是否为空” 如果SODDate =“”,则转到Restart1 'MsgBox“如果测试为真(空白),则宏应重新启动”

重启2: Application.DisplayAlerts = False SODFY = InputBox(“请以以下格式输入报告的会计年度:FYYYYY”) 'MsgBox“测试SODDate是否为空” 如果SODFY =“”,则转到Restart2 'MsgBox“如果测试为真(空白),则宏应重新启动”

Workbooks.Open Filename:= _
    "\\uwspsrv001v.uwsa.edu\shared\ServiceCenterNew\UW Affinity Group\SOD\SOD Role Conflicts\Macro and temp directory\HRS SOD Report.xlsx"
Sheets("HR1").Select
Range("A1").Select
ActiveWorkbook.Worksheets("HR1").ListObjects(Worksheets("HR1").ListObjects.Count).Name = "SODRPTHR1"

0 个答案:

没有答案