繁体   English   中英

尝试选择工作表时,工作表类的选择方法失败

[英]Select Method of WorkSheet class failed when trying to select a worksheet

我构建了打开 Excel 工作簿的 VBA,根据名称选择特定的工作表,将工作表复制到新的工作簿中,代码如下。

Dim myBook As Workbook
    Dim sheet As Worksheet
    Dim targetSheet1, targetSheet2, targetName1, targetName2, targetDir As String
    
    targetDir = "C:\Users\kamsiong.ong\Desktop\temp"
    
    targetSheet1 = "Uob(Airpay)Wallet Paid"
    targetName1 = targetDir + "\" + targetSheet1 + ".csv"
    
    targetSheet2 = "Uob(Airpay)Offline Payment"
    targetName2 = targetDir + "\" + targetSheet2 + ".csv"
    
    
    Set myBook = Workbooks.Open("C:\Users\kamsiong.ong\Desktop\temp\Daily Financial Report Tool -12092021")
    
    For Each sheet In myBook.Worksheets
    
        If sheet.Name = targetSheet1 Then
            
            myBook.Sheets(targetSheet1).Select # Error
            myBook.Sheets(targetSheet1).Copy
            ChDir targetDir
            ActiveWorkbook.SaveAs Filename:=targetName1, FileFormat:=xlCSVUTF8, CreateBackup:=False
            
        ElseIf sheet.Name = targetSheet2 Then
        
            myBook.Sheets(targetSheet2).Select
            myBook.Sheets(targetSheet2).Copy
            ChDir targetDir
            ActiveWorkbook.SaveAs Filename:=targetName2, FileFormat:=xlCSVUTF8, CreateBackup:=False
                
        End If
        
    Next sheet
    
    ActiveWindow.Close
    Set myBook = Nothing

但是,当我按名称myBook.Sheets(targetSheet1).Select选择 Worksheet 时,我的程序遇到了一个错误,即Select Method of WorkSheet class failedFor-Loop Select Method of WorkSheet class failed

在此处输入图片说明

请告知可能是什么错误原因。

该工作表已隐藏- 这就是无法选择它的原因。 请参阅属性屏幕截图的最后一个条目。

正如其他人已经说过的那样: select不需要复制工作表。 您可以简单地使用myBook.Sheets(targetSheet1).Copy而不选择。

但是无法复制隐藏的工作表 - 因此,除非您使其可见,否则复制行中将出现错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM