Excel编译错误:无法分配给只读属性

我在Excel中遇到错误,指出使用以下代码分配给只读属性:

1 Sub GetSheets() 2 Path = "C:WHERE MY DOCUMENTS ARE KEPT" 3 Filename = Dir(Path & "*.CSV") 4 Do While Filename <> "" 5 Workbooks.Open Filename:=Path & Filename, ReadOnly:=True 6 For Each Sheet In ActiveWorkbook.Sheets 7 Sheet.Copy After:=ThisWorkbook.Sheets(1) 8 Next Sheet 9 Workbooks(Filename).Close 10 Filename = Dir() 11 Loop 12 End Sub 

我猜你已经在ThisWorkbook模块中发布的代码?

ThisWorkbook表示工作簿本身,它具有内置(只读) Path属性。

重命名Path (例如) myPath ,你应该没问题。

 Sub GetSheets() 'best to use a Constant here... Const THE_PATH As String = "C:\WHERE\MY DOCUMENTS\ARE KEPT\" Dim Filename as String, wb As Workbook, Sheet As Worksheet Filename = Dir(THE_PATH & "*.CSV") Do While Filename <> "" Set wb = Workbooks.Open(Filename:=THE_PATH & Filename, ReadOnly:=True) For Each Sheet In wb.Sheets Sheet.Copy After:=ThisWorkbook.Sheets(1) Next Sheet wb.Close Filename = Dir() Loop End Sub