繁体   English   中英

VBA:Excel如何复制,包括格式和空格

[英]VBA:Excel how to copy including formatting and spacing

现在,我正在执行此操作以将一行从一张纸复制到另一张纸并将其插入到末尾:

            Sheets("Monthly").Range("A1").EntireRow.Copy Destination:= _
            Sheets(Name).Range("A" & rows.Count).End(xlUp).Offset(1)

但这不会复制任何格式/单元格间距。 在vba中可以这样做吗?

Copy不会复制格式。 也许您的格式不是您想的那样。 我不知道单元格间距是什么意思,但是如果它是列宽,那么Copy将不会复制该间隔。 您必须明确地进行设置,例如

For i = 1 to rSrce.Cells.Count
    rDest.Cells(i).EntireColumn.ColumnWidth = rSrce.Cells(1).EntireColumn.ColumnWidth
Next i

使用宏记录器将为您提供其他格式的语法。

Range("A1").NumberFormat = "General"

要么

.PasteSpecial Paste:=xlPasteFormats
.PasteSpecial Paste:=xlPasteValues

例如 解决它的方法

Sub Copy()
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")

  ws.Range("A1").EntireColumn.Copy

    With ws.Range("G2").EntireColumn
        .PasteSpecial Paste:=xlPasteFormats
        .PasteSpecial Paste:=xlPasteValues
    End With

End Sub

有百万种方法可以尝试

https://www.google.com/search?q=how+to+copy+formatting+in+excel+with+vba&oq=how+to+co&aqs=chrome.0.69i59l2j69i57j69i59j69i60j0.2240j0j7&sourceid=chrome&espv=210&es_sm=93&ie=UTF -8

暂无
暂无

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

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