ตัวอย่างแมโคจะทำสำเนาหน้าใน Visio

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 290581 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
สำหรับรุ่น Microsoft Visio 2000 ของบทความนี้ ดู289859.
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

บทความนี้อธิบายถึงวิธีการทำสำเนาหน้า พร้อมกับรูปร่างที่อยู่บนหน้าเฉพาะ โดยใช้ Microsoft Visual Basic สำหรับโปรแกรมประยุกต์ ตัวอย่างรหัสยังแสดงตัวอย่างของวิธีใช้นี้Page.PageSheetคุณสมบัติการเข้าถึงไปยังเซลล์ ShapeSheet หนึ่งหน้า

ข้อมูลเพิ่มเติม

Microsoft แสดงตัวอย่างการเขียนโปรแกรมเพื่อประกอบการอธิบายเท่านั้น และไม่มีการรับประกัน ไม่ว่าโดยชัดแจ้งหรือโดยนัย ทั้งนี้รวมถึง แต่ไม่จำกัดเพียงการรับประกันโดยนัยในเรื่องการซื้อขายหรือความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ บทความนี้อนุมานว่าคุณมีความคุ้นเคยกับภาษาการเขียนโปรแกรมที่แสดงอยู่ รวมทั้งเครื่องมือต่างๆ ที่ใช้ในการสร้างและแก้จุดบกพร่องกระบวนการ วิศวกรฝ่ายสนับสนุนของ Microsoft สามารถช่วยอธิบายเกี่ยวกับหน้าที่การใช้งานของกระบวนการเฉพาะได้ แต่จะไม่ปรับเปลี่ยนตัวอย่างเหล่านี้เพื่อให้มีหน้าที่การใช้งานที่เพิ่มขึ้น หรือสร้างกระบวนการใดๆ เพื่อตอบสนองความต้องการอย่างใดอย่างหนึ่งของคุณโดยเฉพาะ

โค้ดตัวอย่าง

ตัวอย่างรหัสต่อไปนี้ทำซ้ำหน้า
Public Sub DuplicateActivePage()
    Dim OriginalPage As Visio.Shape
    Dim DuplicatePage As Visio.Shape
    
    Dim ShapeDropX As Double
    Dim ShapeDropY As Double
    
    Set OriginalPage = ActivePage.PageSheet
    ActiveWindow.SelectAll 'Select everything on the first page...
    ActiveWindow.Group '...then group it all...
    ActiveWindow.Copy '... then copy it to the clipboard.
    
    ShapeDropX = ActiveWindow.Selection(1).Cells("PinX") 
    'Get the new Group's x position.

    ShapeDropY = ActiveWindow.Selection(1).Cells("PinY") 
    'Get the new Group's y position.
    
    Set DuplicatePage = ActiveDocument.Pages.Add.PageSheet 
    'Create the new page.
    
    'Set attributes of the new page to be the same as the original page.
    With DuplicatePage
        .Cells("PageWidth") = OriginalPage.Cells("PageWidth")
        .Cells("PageScale") = OriginalPage.Cells("PageScale")
        .Cells("ShdwOffsetX") = OriginalPage.Cells("ShdwOffsetX")
        .Cells("PageHeight") = OriginalPage.Cells("PageHeight")
        .Cells("DrawingScale") = OriginalPage.Cells("DrawingScale")
        .Cells("ShdwOffsetY") = OriginalPage.Cells("ShdwOffsetY")
        .Cells("DrawingSizeType") = OriginalPage.Cells("DrawingSizeType")
        .Cells("DrawingScaleType") = OriginalPage.Cells("DrawingScaleType")
        .Cells("InhibitSnap") = OriginalPage.Cells("InhibitSnap")
        .Cells("PlaceStyle") = OriginalPage.Cells("PlaceStyle")
        .Cells("PlaceDepth") = OriginalPage.Cells("PlaceDepth")
        .Cells("PlowCode") = OriginalPage.Cells("PlowCode")
        .Cells("ResizePage") = OriginalPage.Cells("ResizePage")
        .Cells("DynamicsOff") = OriginalPage.Cells("DynamicsOff")
        .Cells("EnableGrid") = OriginalPage.Cells("EnableGrid")
        .Cells("CtrlAsInput") = OriginalPage.Cells("CtrlAsInput")
        .Cells("LineAdjustFrom") = OriginalPage.Cells("LineAdjustFrom")
        .Cells("BlockSizeX") = OriginalPage.Cells("BlockSizeX")
        .Cells("BlockSizeY") = OriginalPage.Cells("BlockSizeY")
        .Cells("AvenueSizeX") = OriginalPage.Cells("AvenueSizeX")
        .Cells("AvenueSizeY") = OriginalPage.Cells("AvenueSizeY")
        .Cells("RouteStyle") = OriginalPage.Cells("RouteStyle")
        .Cells("PageLineJumpDirX") = OriginalPage.Cells("PageLineJumpDirX")
        .Cells("PageLineJumpDirY") = OriginalPage.Cells("PageLineJumpDirY")
        .Cells("LineAdjustTo") = OriginalPage.Cells("LineAdjustTo")
        .Cells("LineToNodeX") = OriginalPage.Cells("LineToNodeX")
        .Cells("LineToNodeY") = OriginalPage.Cells("LineToNodeY")
        .Cells("LineToLineX") = OriginalPage.Cells("LineToLineX")
        .Cells("LineToLineY") = OriginalPage.Cells("LineToLineY")
        .Cells("LineJumpFactorX") = OriginalPage.Cells("LineJumpFactorX")
        .Cells("LineJumpFactorY") = OriginalPage.Cells("LineJumpFactorY")
        .Cells("LineJumpCode") = OriginalPage.Cells("LineJumpCode")
        .Cells("LineJumpStyle") = OriginalPage.Cells("LineJumpStyle")
        .Cells("XRulerOrigin") = OriginalPage.Cells("XRulerOrigin")
        .Cells("YRulerOrigin") = OriginalPage.Cells("YRulerOrigin")
        .Cells("XRulerDensity") = OriginalPage.Cells("XRulerDensity")
        .Cells("YRulerDensity") = OriginalPage.Cells("YRulerDensity")
        .Cells("XGridOrigin") = OriginalPage.Cells("XGridOrigin")
        .Cells("YGridOrigin") = OriginalPage.Cells("YGridOrigin")
        .Cells("XGridDensity") = OriginalPage.Cells("XGridDensity")
        .Cells("YGridDensity") = OriginalPage.Cells("YGridDensity")
        .Cells("XGridSpacing") = OriginalPage.Cells("XGridSpacing")
        .Cells("YGridSpacing") = OriginalPage.Cells("YGridSpacing")
    End With
    
    ActivePage.Paste 'Paste the copied group from the Clipboard.
    ActiveWindow.Selection(1).Cells("PinX") = ShapeDropX 
    'Position the group.
    ActiveWindow.Selection(1).Cells("PinY") = ShapeDropY
    ActiveWindow.Selection(1).Ungroup 'Ungroup the group.
    
    ActiveWindow.Page = OriginalPage.ContainingPage.Name 
    'Go back to the original page...

    ActiveWindow.SelectAll '...then select the group...
    ActiveWindow.Selection(1).Ungroup '...and ungroup it...
    ActiveWindow.DeselectAll ' and then deselect all of the shapes.
    
    MsgBox DuplicatePage.ContainingPage.Name & " has been created."
End Sub
				

ข้อมูลอ้างอิง

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการใช้ตัวอย่างรหัสในบทความนี้ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
277011วิธีการรันโค้ดตัวอย่างจากบทความในฐานความรู้
อีกวิธีหนึ่งคือ เยี่ยมชมเว็บไซต์ต่อไปนี้ของ Microsoft:

คุณสมบัติ

หมายเลขบทความ (Article ID): 290581 - รีวิวครั้งสุดท้าย: 16 ตุลาคม 2553 - Revision: 2.0
ใช้กับ
  • Microsoft Office Visio Professional 2007
  • Microsoft Office Visio Standard 2007
  • Microsoft Office Visio Professional 2003
  • Microsoft Visio 2002 Professional Edition
  • Microsoft Visio 2002 Standard Edition
Keywords: 
kbhowto kbmt KB290581 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:290581

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com