作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 FilePicker 将工作簿定义为变量。在顶部,我将变量定义为公共(public)和字符串。我试图将其声明为工作簿,但它不起作用。当我尝试在另一个模块中进入此工作簿时,将其定义为字符串,我得到
以下编译错误:
Invalid qualifier.
Public wipreport As String
sub wip()
With Application.FileDialog(msoFileDialogFilePicker)
'Makes sure the user can select only one file
.AllowMultiSelect = False
.Title = "Select WIP Report"
.ButtonName = "OK"
'Filter to just the following types of files to narrow down selection options
.Filters.Add "Excel Files", "*.xlsx; *.xlsm; *.xls; *.xlsb", 1
'Show the dialog box
.Show
'Store in fullpath variable
wipreport = .SelectedItems.Item(1)
End With
end sub
wipreport.Worksheets("1. WIP report").Select
最佳答案
编译错误是您可能遇到的最好的错误 - 编译器明确告诉它不起作用。在这种情况下,wipreport.Worksheets("1. WIP report").Select
无法工作,因为 wipreport
是 String
类型它没有 Worksheets
属性(property)。
可能尝试这样的事情,如果 wipreport
它将起作用是打开的 Excel 文件的名称:
Workbooks(wipreport).Worksheets("1. WIP report").Select
wipreport
是文件的路径,然后打开它是一个更好的选择:
Workbooks.Open wipreport
Dim wb As Workbook
Set wb = Workbooks.Open(Filename:=wipreport)
关于excel - 在 VBA 中使用文件选择器打开工作簿会引发编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58289550/
我是一名优秀的程序员,十分优秀!