excel - 运行时错误 9 下标超出范围

标签 excel excel-formula vba

我对 VB for Excel 有点陌生,但我希望在接下来的几个月里会变得更好。它可以通过多种方式使我的团队的工作更轻松。有人可以帮我弄清楚如何让这个宏运行吗?我已经解决了一些问题,但欢迎任何专业知识。

我正在尝试创建一个人们可以用人口普查数据填写的表格,然后我将在另一张表中使用这些数据运行公式。

我目前在“Sheets(strName).Select”部分收到突出显示的错误

Sub InputSheet()

Dim sName As String
Dim sStatus As String
Dim sSalary As String
Dim sBonus As String
Dim sPartner As String
Dim sWorkState As String
Dim sBenefitsLevel As String

sName = InputBox("Input Employee Name:", "PROJECT INFORMATION")
sStatus = InputBox("Input FT or PT:", "PROJECT INFORMATION")
sSalary = InputBox("Input Salary:", "PROJECT INFORMATION")
sBonus = InputBox("Input Bonus:", "PROJECT INFORMATION")
sPartner = InputBox("Input Partner Status (Y/N):", "PROJECT INFORMATION")
sWorkState = InputBox("Input Work State:", "PROJECT INFORMATION")
sBenefitsLevel = InputBox("Input Benefits Level:", "PROJECT INFORMATION")


Dim MyNewSheet As Worksheet
Set MyNewSheet = Worksheets.Add(, Sheets(Sheets.Count))
Dim strName As String
strName = "Project Data "

Sheets(strName).Select
Cells(1, 1).Value = "Employee Name or Title"
Cells(1, 2).Value = "Employment Status"
Cells(1, 3).Value = "Salary"

Cells(1, 4).Value = "Bonus"
Cells(1, 5).Value = "Partner Status"
Cells(1, 6).Value = "Work State"
Cells(1, 7).Value = "Benefits Level"
Cells(2, 1).Value = sName
Cells(2, 2).Value = sStatus
Cells(2, 3).Value = sSalary
Cells(2, 4).Value = sBonus
Cells(2, 5).Value = sPartner
Cells(2, 6).Value = sWorkState
Cells(2, 7).Value = sBenefitsLevel
ThisWorkbook.Save

MsgBox "Process is Complete!"

End Sub

最佳答案

您在 strName 末尾有一个空格 - 选项卡名为“项目数据”还是“项目数据”?

关于excel - 运行时错误 9 下标超出范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23549447/

相关文章:

Excel公式选择 "n"行

excel - 获取溢出结果以引用正确的行#

c# - 如何保护我的excel文件不被其他人阅读?

excel - 检测文本相同但文本格式不同的单元格之间的差异

excel - 使用 VBA 在 Excel 中创建饼图

excel - 提取PDF文档的特定部分

excel - 如何将图像附件发送到电子邮件

excel - 禁用SSRS中行组中的单元格合并

excel - Excel 筛选功能中的引用列表

excel - 从单元格中的列表中提取重复项