使用宏,工作表中清除内容不清除剪贴板(Clear contents of a WorkSheet u

2019-10-17 01:58发布

如何使用宏,但不清除剪贴板中的内容清除Excel工作表中的内容?

我目前使用下面的代码(可通过单击工作表上的按钮调用),但是这将清除剪贴板中的数据,这是我从其他地方复制过来的,并且要在清除纸贴

Sub clearly()  
    Dim ws As Worksheet  
    For Each ws In ThisWorkbook.Worksheets  
        ws.UsedRange.ClearContents  
    Next ws  
End Sub

Answer 1:

这是我从其他地方复制过来的,并且要在清除纸贴

为什么不创建一个临时表和数据中的所有表粘贴进去,然后清除。 一旦完成从临时表中的数据复制到相关的表和删除临时表吗?

看到这个( 久经考验的

Sub clearly()
    Dim ws As Worksheet, wsTemp As Worksheet

    '~~> Create a Temp Sheet
    Set wsTemp = Sheets.Add

    '~~> Copy clipboad data to temp sheet
    wsTemp.Range("A1").PasteSpecial xlPasteAll

    '~~> Clear contents of all sheets except temp sheet
    For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> wsTemp.Name Then ws.Cells.ClearContents
    Next ws

    '~~> Copy data from temp sheet to relevant sheet
    wsTemp.Cells.Copy Sheets("Sheet1").Cells

    '~~> Delete temp sheet
    Application.DisplayAlerts = False
    wsTemp.Delete
    Application.DisplayAlerts = True
End Sub


文章来源: Clear contents of a WorkSheet using macro, without clearing the clipboard