我正在使用以下VBA宏来复制Excel中的单元格.我怎么能修改它,以便只复制 vales 而不是格式


Sub ButtonCode()
Dim ws1 As Worksheet, ws2 As Worksheet
Dim DestRow As Long
Set ws1 = Sheets("RA REQUEST FORM")
Set ws2 = Sheets("ACTIVE CREDITS")
DestRow = ws2.Cells(Rows.Count, "A").End(xlUp).Row + 1
ws1.Range("A22").Copy ws2.Range("A" & DestRow)
ws1.Range("D11").Copy ws2.Range("B" & DestRow)
ws1.Range("C18").Copy ws2.Range("E" & DestRow)
ws1.Range("C19").Copy ws2.Range("G" & DestRow)

正如 BigBen 所说,使用范围的 .value 属性来复制范围的值。

Sub ButtonCode()
Dim ws1 As Worksheet, ws2 As Worksheet
Dim DestRow As Long
Set ws1 = Sheets("RA REQUEST FORM")
Set ws2 = Sheets("ACTIVE CREDITS")
DestRow = ws2.Cells(Rows.Count, "A").End(xlUp).Row + 1
ws2.Range("A" & DestRow).value = ws1.Range("A22").value
ws2.Range("B" & DestRow).value = ws1.Range("D11").value
ws2.Range("E" & DestRow).value = ws1.Range("C18").value
ws2.Range("G" & DestRow).value = ws1.Range("C19").value
End Sub

您也可以改用ws1.Range("A22").Copyws2.Range("A" & DestRow).PasteSpecial xlValues,但这很烦人,因为代码会清除剪贴板上的任何内容。

最新更新