excel - 对象 'Copy' 的方法 '_Worksheet' 失败

标签 excel vba

我现在第一次遇到错误

Method 'Copy' of object '_Worksheet' failed



我听说这是一个很常见的错误,但我无法找到解决方案。当我搜索低谷时,我发现了很多关于

'Range' of object failed-Error.



此错误是由工作站的内存限制引起的还是与软件相关的错误?

有人有解决这个问题的想法吗?

如果我感兴趣的是我的 VBA 代码:
Private Sub CommandButton1_Click()
MsgBox "Message"

  Dim wb As Workbook
  Set wb = Workbooks.Add(xlWBATWorksheet)
  wb.Sheets(1).Name = "deletethissheet"

  Dim ws As Worksheet
  For Each ws In ThisWorkbook.Worksheets
    ws.Copy After:=wb.Sheets(wb.Sheets.Count)
  Next

  For Each ws In wb.Worksheets
    ws.UsedRange.Formula = ws.UsedRange.Value

    Dim sh As Shape
    For Each sh In ws.Shapes
      sh.Delete
    Next

  Next

  For Each Link In wb.LinkSources(xlLinkTypeExcelLinks)
  wb.BreakLink Name:=Link, Type:=xlLinkTypeExcelLinks
  Next

  wb.Sheets("deletethissheet").Delete
  wb.SaveAs Replace(ThisWorkbook.FullName, ".xlsm", "_" & Format(Date, "yyyymmdd") & ".xlsx"), xlOpenXMLWorkbook
  wb.Close SaveChanges:=False

End Sub
ws.Copy After:=wb.Sheets(wb.Sheets.Count)是错误的原因。

最佳答案

这是一年前的帖子,但如果其他人在这里找到了他们的方式,我也收到了这个错误并解决了它。我试图在隐藏的工作表上使用 .copy 函数。一旦我取消隐藏工作表,宏就可以正常运行。通过添加 Worksheets("Sheet1").visible = True之前.复制代码和Worksheets("Sheet1").visible = False在代码的末尾,它为我修复了错误。

关于excel - 对象 'Copy' 的方法 '_Worksheet' 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60205862/

相关文章:

ms-access - 如何从 Microsoft Access 的附件字段查询附件数量?

excel - 分析和更新动态表宏 VBA

vba - 使用 vba 删除不同 Excel 工作簿中 Excel 工作表上的空白行

基于条件的 Excel 自动编号行

excel - 如何找到使用 VBA 匹配的范围内的最后一行单元格?

vba - 用字符串调用 Sub - VBA

vba - 根据 A 列中的匹配索引替换 C 列中的字符串

excel - 从工作表代码中引用添加全局变量

Excel数组公式IF(多条件)

VBA vlookup公式错误