我有一个sub,它将过滤后的表复制并粘贴到新的工作表中,但我希望它只复制单元格值,而不是公式。
Sub PasteFilteredTableToTempSheet(ByRef TempWS As Worksheet, ByRef CalcWS As Worksheet)
CalcWS.Activate
Dim NewTable As ListObject
Set NewTable = CalcWS.ListObjects("Full_Bearings_List")
NewTable.DataBodyRange.SpecialCells(xlCellTypeVisible).Copy _
Destination:=TempWS.Range("A1")
'TempWS.Range("A1").PasteSpecial xlPasteValues
'Application.CutCopyMode = False
End Sub
注释掉的2行没有做我想要的,它复制单元格值但是在新工作表上数据没有格式化为表格,与目标语法一样,它自动被格式化为表格但公式也被复制,而不仅仅是值。
该链接显示了两个示例。我想要左图像的格式,但只有表值,而不是公式。
答案 0 :(得分:2)
只需粘贴两次。
TempWS.Range("A1").PasteSpecial xlPasteValues
TempWS.Range("A1").PasteSpecial xlPasteFormats
答案 1 :(得分:0)
很奇怪,试试:
NewTable.DataBodyRange.SpecialCells(xlCellTypeVisible).Copy
TempWS.Range("A1").PasteSpecial xlPasteValuesAndNumberFormats