Page 1 of 1

ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Tue Mar 17, 2020 6:13 pm
by vichaim
คือผมต้องการปรับ Scaling ให้เป็นตามขนาดที่ผมต้องการผ่าน VBA แต่ ไม่ทราบคำสั่งครับ รบกวนด้วยครับ ขอบคุณครับ

Re: ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Tue Mar 17, 2020 9:39 pm
by snasui
:D ถ้าไม่ทราบก็ลองบันทึก Macro แล้วสังเกตผลลัพธ์ที่ได้และลองปรับปรุง Code มาดูก่อน ติดตรงไหนค่อยถามกันต่อครับ

Re: ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Wed Mar 18, 2020 9:33 am
by vichaim
ได้ทำการบันทึก Marco ดูแล้วครับ แต่ไม่ขึ้น code อะไรเลยครับ

ขึ้นมาแค่นี้ครับ

Sub Macro2()
'
' Macro2 Macro
'

'
End Sub

Re: ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Wed Mar 18, 2020 11:05 am
by logic
ผมบันทึกมาโครแล้วได้มาเยอะแยะ ลองเอาไปเปลี่ยนค่าดูเองได้เลยครับ 😊

Code: Select all

Sub Macro1()
'
' Macro1 Macro
'

'
    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .PrintTitleRows = ""
        .PrintTitleColumns = ""
    End With
    Application.PrintCommunication = True
    ActiveSheet.PageSetup.PrintArea = ""
    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = ""
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.708661417322835)
        .RightMargin = Application.InchesToPoints(0.708661417322835)
        .TopMargin = Application.InchesToPoints(0.748031496062992)
        .BottomMargin = Application.InchesToPoints(0.748031496062992)
        .HeaderMargin = Application.InchesToPoints(0.31496062992126)
        .FooterMargin = Application.InchesToPoints(0.31496062992126)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 200
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = 100
        .PrintErrors = xlPrintErrorsDisplayed
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = False
        .ScaleWithDocHeaderFooter = True
        .AlignMarginsHeaderFooter = True
        .EvenPage.LeftHeader.Text = ""
        .EvenPage.CenterHeader.Text = ""
        .EvenPage.RightHeader.Text = ""
        .EvenPage.LeftFooter.Text = ""
        .EvenPage.CenterFooter.Text = ""
        .EvenPage.RightFooter.Text = ""
        .FirstPage.LeftHeader.Text = ""
        .FirstPage.CenterHeader.Text = ""
        .FirstPage.RightHeader.Text = ""
        .FirstPage.LeftFooter.Text = ""
        .FirstPage.CenterFooter.Text = ""
        .FirstPage.RightFooter.Text = ""
    End With
    Application.PrintCommunication = True
End Sub
การวางโค้ดอ่านกติการด้านบนนะ อาจารย์บอกไว้แล้วว่าให้มี tag เปิด-ปิดแบบไหน ☝

Re: ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Wed Mar 18, 2020 11:39 am
by vichaim
ไม่สามารถคุณใช้ Excel version อะไรครับ

ฝาก บันทึก Macro โดยการเปลี่ยน Scaling เป็น 88% ได้ไหมครับ รบกวนด้วยครับขอบคุณครับ

Re: ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Wed Mar 18, 2020 1:53 pm
by logic
เอาโค้ดผมไปลองรันแล้วติดตรงไหนแจ้งมาเลยครับ 🙂

Re: ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Thu Mar 19, 2020 12:48 pm
by vichaim
logic wrote: Wed Mar 18, 2020 1:53 pm เอาโค้ดผมไปลองรันแล้วติดตรงไหนแจ้งมาเลยครับ 🙂
รันแล้วครับติดตรงตรง Scaling ยังเป็น 100% หา Code VBA ที่เกี่ยวข้องไม่เจอครับว่าปรับตรงไหน

Re: ขอ Code VBA สำหรับ ปรับเปลี่ยน Scaling ใน PageSetup หน่อยครับ

Posted: Thu Mar 19, 2020 2:45 pm
by logic
ลองปรับตรง .Zoom = 100 เป็น .Zoom = 80 ดูครับ 🙂