Excel 如何使用VBA将页面设置从工作表复制到其他工作表

Excel 如何使用VBA将页面设置从工作表复制到其他工作表,excel,vba,Excel,Vba,如何使用VBA将页面设置(包括右标题图片)从工作表复制到其他工作表? 有人能帮我吗? 当做 安东尼·特伦斯(Antony Terrence)有点赤裸裸,但当你完成时,你就会明白了 显然,没有简单的方法可以完整复制PageSetup对象,因此,假设工作簿处于打开状态,请尝试以下操作: Sub cpyPS() Dim wsFrom As Worksheet, wsTO As Worksheet Set wsFrom = Sheets("From") Set wsTO = Sheets("To")

如何使用VBA将页面设置(包括右标题图片)从工作表复制到其他工作表? 有人能帮我吗? 当做
安东尼·特伦斯(Antony Terrence)

有点赤裸裸,但当你完成时,你就会明白了

显然,没有简单的方法可以完整复制PageSetup对象,因此,假设工作簿处于打开状态,请尝试以下操作:

Sub cpyPS()
Dim wsFrom As Worksheet, wsTO As Worksheet

Set wsFrom = Sheets("From")
Set wsTO = Sheets("To")

    With wsTO.PageSetup
        'there are nearly 50 properties
        .AlignMarginsHeaderFooter = wsFrom.PageSetup.AlignMarginsHeaderFooter
        .BlackAndWhite = wsFrom.PageSetup.BlackAndWhite
        .BottomMargin = wsFrom.PageSetup.BottomMargin
        '
        '
        .LeftMargin = wsFrom.PageSetup.LeftMargin
        '
        '
        .Orientation = wsFrom.PageSetup.Orientation
        '
        '
        .PaperSize = wsFrom.PageSetup.PaperSize

        .RightHeaderPicture.Filename = wsFrom.PageSetup.RightHeaderPicture.Filename
        .RightMargin = wsFrom.PageSetup.RightMargin
        '
        '
        .TopMargin = wsFrom.PageSetup.TopMargin
        '
        '
        .Zoom = wsFrom.PageSetup.Zoom
    End With

End Sub

要考虑的属性的完整列表是.

没关系,也许把它作为一个函数写一次,然后发回给所有人使用


如果这对您来说是可行的,您可以复制整个工作表并重命名它。这些属性将按原样“跨越”

根据barryleajo的回答,我想出了以下代码:

(注释区域导致运行时错误)


使用谷歌做一些研究,我相信你会找到答案。请勾选这个答案:谢谢帕雷什。在发布我的问题之前,我确实搜索过谷歌,但没有结果。我还没有得到答案(我只需复制整个页面,并将其重命名,就像他在文章末尾提到的@barryleajo一样。省去了很多麻烦,也省去了编写代码的时间。嗨,Barry,非常感谢这个奇妙的解决方案。我只需要标题,而不会复制整个工作表,因为每个工作表中都有不同的对象。事实上,我只是想要钻机htHeaderPicture从一张图纸复制到另一张图纸。您的代码给了我一个好主意。我试图使用FileDialog上载图片(徽标),但它不起作用。谢谢您,Michael。
Sub copyPageSetup(fromSheet, toSheet)
With toSheet.PageSetup
    .AlignMarginsHeaderFooter = fromSheet.PageSetup.AlignMarginsHeaderFooter
'    .Application = fromSheet.PageSetup.Application
    .BlackAndWhite = fromSheet.PageSetup.BlackAndWhite
    .BottomMargin = fromSheet.PageSetup.BottomMargin
    .CenterFooter = fromSheet.PageSetup.CenterFooter
'   .CenterFooterPicture = fromSheet.PageSetup.CenterFooterPicture
    .CenterHeader = fromSheet.PageSetup.CenterHeader
'   .CenterHeaderPicture = fromSheet.PageSetup.CenterHeaderPicture
    .CenterHorizontally = fromSheet.PageSetup.CenterHorizontally
    .CenterVertically = fromSheet.PageSetup.CenterVertically
'   .Creator = fromSheet.PageSetup.Creator
    .DifferentFirstPageHeaderFooter = fromSheet.PageSetup.DifferentFirstPageHeaderFooter
    .Draft = fromSheet.PageSetup.Draft
'    .EvenPage = fromSheet.PageSetup.EvenPage
'    .FirstPage = fromSheet.PageSetup.FirstPage
    .FirstPageNumber = fromSheet.PageSetup.FirstPageNumber
    .FitToPagesTall = fromSheet.PageSetup.FitToPagesTall
    .FitToPagesWide = fromSheet.PageSetup.FitToPagesWide
    .FooterMargin = fromSheet.PageSetup.FooterMargin
    .HeaderMargin = fromSheet.PageSetup.HeaderMargin
    .LeftFooter = fromSheet.PageSetup.LeftFooter
'    .LeftFooterPicture = fromSheet.PageSetup.LeftFooterPicture
    .LeftHeader = fromSheet.PageSetup.LeftHeader
'    .LeftHeaderPicture = fromSheet.PageSetup.LeftHeaderPicture
    .LeftMargin = fromSheet.PageSetup.LeftMargin
    .OddAndEvenPagesHeaderFooter = fromSheet.PageSetup.OddAndEvenPagesHeaderFooter
    .Order = fromSheet.PageSetup.Order
    .Orientation = fromSheet.PageSetup.Orientation
'    .Pages = fromSheet.PageSetup.Pages
    .PaperSize = fromSheet.PageSetup.PaperSize
'    .Parent = fromSheet.PageSetup.Parent
    .PrintArea = fromSheet.PageSetup.PrintArea
    .PrintComments = fromSheet.PageSetup.PrintComments
    .PrintErrors = fromSheet.PageSetup.PrintErrors
    .PrintGridlines = fromSheet.PageSetup.PrintGridlines
    .PrintHeadings = fromSheet.PageSetup.PrintHeadings
    .PrintNotes = fromSheet.PageSetup.PrintNotes
    .PrintQuality = fromSheet.PageSetup.PrintQuality
    .PrintTitleColumns = fromSheet.PageSetup.PrintTitleColumns
    .PrintTitleRows = fromSheet.PageSetup.PrintTitleRows
    .RightFooter = fromSheet.PageSetup.RightFooter
'    .RightFooterPicture = fromSheet.PageSetup.RightFooterPicture
    .RightHeader = fromSheet.PageSetup.RightHeader
'    .RightHeaderPicture = fromSheet.PageSetup.RightHeaderPicture
    .RightMargin = fromSheet.PageSetup.RightMargin
    .ScaleWithDocHeaderFooter = fromSheet.PageSetup.ScaleWithDocHeaderFooter
    .TopMargin = fromSheet.PageSetup.TopMargin
    .Zoom = fromSheet.PageSetup.Zoom
    End With
End Sub