lau*_*ens 3 excel vba for-loop excel-2007 excel-vba
我正在制作一个ExcelComparer但是我遇到了一个可能明显的错误,我显然错过了一些东西.
我在Excel 2007中运行vba宏
我得到的确切错误是"运行时错误13:类型不匹配"当循环尝试获取第二个worksheet.name时会发生这种情况.
因此,第一个sheetname返回正常
在下面你找到宏
先谢谢你,L
Sub compare()
Dim strWorkbook1, strWorkbook2 As String
Dim Workbook1, Workbook2 As Workbook
strWorkbook1 = Worksheets("Sheet1").Range("C5") & Worksheets("Sheet1").Range("D5")
strWorkbook2 = Worksheets("Sheet1").Range("C6") & Worksheets("Sheet1").Range("D6")
Set xlapp = CreateObject("Excel.application")
Set Workbook1 = xlapp.Workbooks.Open(strWorkbook1)
xlapp.Visible = False
Dim ws As Worksheet
For Each ws In Workbook1.Sheets
'ws.Select
If Not ws.Visible = xlSheetVeryHidden Then
MsgBox (ws.Name)
End If
Next ws
xlapp.Close
End Sub
Run Code Online (Sandbox Code Playgroud)
小智 8
将此用于For循环:
For Each ws In Workbook1.Worksheets
Run Code Online (Sandbox Code Playgroud)
从MSDN中,表格和工作表属性之间的区别是:
此属性不返回宏工作表,图表或对话框工作表.使用Sheets属性返回这些工作表以及工作表.您还可以使用专用属性Excel4MacroSheets和Excel4IntlMacroSheets返回宏工作表,使用Charts属性返回图表.
归档时间: |
|
查看次数: |
2934 次 |
最近记录: |