Excel VBA เพื่อพิมพ์เป็น PDF และบันทึกด้วยชื่อไฟล์อัตโนมัติ

  • แบ่งปันสิ่งนี้
Hugh West

สารบัญ

การส่งออกสเปรดชีต Excel เป็นเอกสาร PDF มีประโยชน์ เมื่อเปลี่ยนไฟล์เป็นรูปแบบ PDF เราจะสามารถพิมพ์และแบ่งปันกับคนรู้จักมืออาชีพต่างๆ PDF เป็นมาตรฐานที่น่าเชื่อถือสำหรับการส่งออกเอกสารที่คุณรู้สึกว่าจำเป็นต้องแชร์กับผู้อื่นหรือเผยแพร่ต่อสาธารณะ ในบทความนี้ เราจะสาธิตตัวอย่างของ VBA เพื่อพิมพ์เป็น PDF และบันทึกด้วยชื่อไฟล์อัตโนมัติ

ดาวน์โหลดสมุดงานแบบฝึกหัด

คุณสามารถดาวน์โหลดสมุดงานและ ฝึกฝนกับพวกเขา

พิมพ์ VBA เป็น PDF.xlsm

9 ตัวอย่างของ Excel VBA เพื่อพิมพ์เป็น PDF และบันทึกด้วยชื่อไฟล์อัตโนมัติใน Excel

เราสามารถพิมพ์ไฟล์ Excel เป็น PDF และบันทึกไฟล์ด้วยชื่อไฟล์อัตโนมัติโดยใช้แถบเครื่องมือ Excel แต่จะง่ายกว่าด้วย Excel VBA เราแค่ต้องการโค้ด VBA และเรียกใช้ เราไม่ต้องการคลิกมากมายเพื่อทำงานให้เสร็จ และช่วยประหยัดเวลาของเรา

Visual Basic for Applications ( VBA ) เป็นรูปแบบการเขียนโปรแกรมและโปรแกรมแยก ที่เห็นได้บ่อยที่สุดใน Microsoft Office เป็นเครื่องมือวิเคราะห์ ซึ่งมักมีให้บริการในรูปแบบ โปรแกรมเสริมของ Excel ซึ่งช่วยเพิ่มประสิทธิภาพการดำเนินการด้วยตนเอง เช่น งานบ้านที่ซ้ำซากจำเจและใช้เวลานาน นอกจากนี้ยังสามารถสร้างไฟล์ CSV มาดูตัวอย่างการพิมพ์ไฟล์ excel เป็น PDF ด้วยชื่อไฟล์อัตโนมัติกัน

1. พิมพ์สมุดงานเป็น PDFเขียนโค้ดของเราเพื่อสร้างตารางจากช่วง
  • ประการที่สาม เลือกโมดูลจากแถบเมนูแบบเลื่อนลง แทรก
  • จากนั้น คัดลอกและวาง โค้ด VBA ด้านล่าง
  • รหัส VBA:

    6103
    • นอกจากนี้ เรียกใช้รหัสโดยคลิกที่ปุ่ม RubSub หรือใช้ปุ่ม F5 แป้นพิมพ์ลัด

    • ไฟล์นี้บันทึกเป็น PDF โดยใช้ชื่อเดียวกับตัวอย่างก่อนหน้า

    คำอธิบายรหัส VBA

    5032

    กลุ่มรหัสเหล่านี้มีไว้สำหรับสร้างและกำหนดตัวแปร

    4098

    วิธีนี้จะบันทึกช่วงของข้อมูลไฟล์เป็น PDF

    อ่านเพิ่มเติม: วิธีแปลง Excel เป็น PDF โดยไม่สูญเสียรูปแบบ (5 วิธีที่ได้ผล)

    9. บันทึกชื่อไฟล์ด้วยวิธีอัตโนมัติขณะพิมพ์เป็น PDF ใน Excel VBA

    มาดูวิธีอื่นของ Excel VBA สำหรับการพิมพ์เป็น PDF และจัดเก็บชื่อไฟล์โดยอัตโนมัติ

    ขั้นตอน:

    • เริ่มต้นด้วย เลือกแท็บ นักพัฒนาซอฟต์แวร์ จาก Ribbon
    • อย่างที่สอง เลือก Visual Basic จากพื้นที่ โค้ด เพื่อเปิด Visual Basic Editor คลิก Alt + F11 เพื่อเปิดใช้ Visual Basic Editor
    • คุณยังสามารถคลิกขวาบนเวิร์กชีตของคุณและเลือก ดู รหัส . ซึ่งจะนำคุณไปยัง Visual Basic Editor ด้วย
    • ตอนนี้ เราจะเห็น Visual Basic Editor ซึ่งเราจะเขียนโค้ดเพื่อสร้างตารางจากช่วง
    • นอกจากนี้ เลือก โมดูล จากแถบเมนูแบบเลื่อนลง แทรก
    • จากนั้น คัดลอกและวาง VBA โค้ดที่ตามมา

    โค้ด VBA:

    5631
    • จากนั้นโค้ดจะดำเนินการโดยคลิกที่ RubSub ปุ่มหรือใช้แป้นพิมพ์ลัด F5

    คำอธิบายโค้ด VBA

    5415

    สำหรับการรับไฟล์เป็น pdf และบันทึกชื่อไฟล์ pdf

    8742

    นี่เป็นเพียงการตั้งค่าคุณภาพการพิมพ์

    6321

    บรรทัดเหล่านี้จะแนะนำผู้ใช้เกี่ยวกับวิธีการ ส่งไฟล์เพื่อพิมพ์เป็น pdf

    อ่านเพิ่มเติม: วิธีบันทึก Excel เป็น PDF โดยไม่ตัดออก (4 วิธีที่เหมาะสม)

    <4 สรุป

    วิธีการข้างต้นจะช่วยให้คุณทำงานได้จาก พิมพ์เป็น PDF และบันทึกชื่อไฟล์อัตโนมัติใน Excel VBA ฉันหวังว่านี่จะช่วยคุณได้! หากคุณมีคำถาม คำแนะนำ หรือข้อเสนอแนะ โปรดแจ้งให้เราทราบในส่วนความคิดเห็น หรือคุณสามารถดูบทความอื่นๆ ของเราในบล็อก ExcelWIKI.com !

    & บันทึกชื่อไฟล์โดยอัตโนมัติใน Excel

    สมมติว่าเราต้องการพิมพ์ทั้งสมุดงานและบันทึกชื่อไฟล์เมื่อเราใส่ชื่อในรหัสของเรา ตอนนี้ สมมติว่าเราต้องการบันทึกไฟล์ PDF ในคอมพิวเตอร์ของเรา Local Disk (E:) ดังที่เราเห็นในภาพด้านล่างว่าตำแหน่งนั้นไม่มีไฟล์ pdf หลังจากเรียกใช้รหัส VBA เราจะสามารถดูไฟล์ PDF ที่เราต้องการในตำแหน่งนั้นบนพีซีของเรา

    ด้วย Excel VBA ผู้ใช้สามารถใช้โค้ดที่ทำหน้าที่เป็นเมนู excel จากริบบอนได้อย่างง่ายดาย หากต้องการใช้โค้ด VBA เพื่อพิมพ์ PDF และบันทึกด้วยชื่อไฟล์อัตโนมัติ ให้ทำตามขั้นตอน

    ขั้นตอน:

    • ประการแรก ไปที่แท็บ นักพัฒนา จากริบบิ้น
    • ประการที่สอง จากหมวดหมู่ รหัส คลิกที่ Visual Basic เพื่อเปิด ตัวแก้ไข Visual Basic หรือกด Alt + F11 เพื่อเปิด Visual Basic Editor .

    • แทนที่จะทำเช่นนี้ คุณสามารถคลิกขวาบนเวิร์กชีตของคุณและไปที่ ดูโค้ด ซึ่งจะนำคุณไปยัง Visual Basic Editor ด้วย

    • ซึ่งจะปรากฏใน Visual Basic Editor ตำแหน่งที่เราเขียนโค้ดของเราเพื่อสร้างตารางจากช่วง
    • ประการที่สาม คลิกที่ โมดูล จากแถบเมนูแบบเลื่อนลง แทรก
    • <14

      • สิ่งนี้จะสร้าง โมดูล ในสมุดงานของคุณ
      • และคัดลอกและวาง VBA รหัสที่แสดงด้านล่าง

      รหัส VBA:

      2171
      • เรียกใช้รหัสโดยกดแป้น F5 บน แป้นพิมพ์ของคุณ

      • สุดท้าย คุณจะเห็นว่าชื่อไฟล์ PDF สมุดงาน อยู่บนเส้นทางนั้นบนของคุณ คอมพิวเตอร์. นั่นหมายความว่าชื่อไฟล์จะถูกบันทึกโดยอัตโนมัติ

      • และสุดท้าย หากคุณกลับไปที่สมุดงาน คุณจะเห็นเส้นประ . เนื่องจากขณะนี้ไฟล์พร้อมสำหรับการพิมพ์แล้ว

      คำอธิบายรหัส VBA

      4158
      <0 Sub เป็นส่วนหนึ่งของโค้ดที่ใช้จัดการงานในโค้ดแต่จะไม่คืนค่าใดๆ เรียกอีกอย่างว่าขั้นตอนย่อย ดังนั้นเราจึงตั้งชื่อขั้นตอนของเรา Print_Workbook() .
      6272

      บรรทัดนี้ใช้สำหรับตำแหน่งและชื่อไฟล์ pdf ที่นี่ เราบันทึกไฟล์ของเราใน E: บนคอมพิวเตอร์ของเรา และตั้งชื่อไฟล์ว่า สมุดงาน .

      4476

      โค้ดบรรทัดนี้ใช้สำหรับส่งออกไฟล์ excel เป็น PDF และ ทำให้พร้อมสำหรับการพิมพ์

      4773

      การดำเนินการนี้จะสิ้นสุดขั้นตอน

      อ่านเพิ่มเติม: ส่งออก Excel เป็น PDF ด้วยไฮเปอร์ลิงก์ (2 วิธีด่วน)

      2. บันทึกแผ่นงานที่ใช้งานโดยอัตโนมัติเป็น PDF

      มาดูตัวอย่างอื่น พิมพ์แผ่นงานที่ใช้งานเป็น pdf และบันทึกชื่อไฟล์โดยอัตโนมัติโดยใช้ Excel VBA .

      ขั้นตอน:

      • ขั้นแรก ไปที่แท็บ พัฒนา r จากแถบเครื่องมือ
      • ขั้นที่สอง คลิกที่ Visual Basic เพื่อเปิด วิชวลBasic Editor .
      • อีกวิธีในการเปิด Visual Basic Editor คือการกด Alt + F11 .
      • หรือ ขวา- คลิกที่แผ่นงาน จากนั้นเลือก ดูโค้ด
      • ถัดไป ไปที่ แทรก และเลือก โมดูล จากเมนูแบบเลื่อนลง
      • และจะเปิดหน้าต่าง Visual Basic ขึ้นมา
      • หลังจากนั้น ให้คัดลอกและวาง โค้ด VBA ด้านล่าง

      รหัส VBA:

      1429
      • นอกจากนี้ กด แป้น F5 หรือคลิกที่ปุ่ม เรียกใช้ย่อย เพื่อเรียกใช้โค้ด

      • ในตัวอย่างก่อนหน้านี้ ไฟล์จะถูกบันทึกเป็น PDF ด้วยชื่อไฟล์อัตโนมัติ

      หากคุณอ่านคำอธิบายโค้ด ของ example1 คุณจะเข้าใจสิ่งนี้เช่นกัน

      อ่านเพิ่มเติม: มาโคร Excel: บันทึกเป็น PDF พร้อมวันที่ใน ชื่อไฟล์ (4 ตัวอย่างที่เหมาะสม)

      3. พิมพ์ไฟล์ PDF จาก Excel ด้วย VBA ในช่วง

      มาดูตัวอย่างอื่นของการใช้ Excel VBA เพื่อพิมพ์แผ่นงานที่ใช้งานเป็น pdf และบันทึกชื่อไฟล์โดยอัตโนมัติ

      ขั้นตอน:

      • ในการเริ่มต้น คลิกแท็บ นักพัฒนาซอฟต์แวร์ บน Ribbon
      • อย่างที่สอง เปิดใช้ Visual Basic Editor โดยคลิกที่ Visual Basic .
      • อีกทางหนึ่ง คุณอาจเข้าถึง Visual Basic Editor โดยกด Alt + F11 .
      • หรือ คลิกขวา บนแผ่นงาน และเลือก ดูโค้ด จากเมนู
      • ถัดไป เลือก โมดูล จากดรอป- กล่องลงภายใต้ แทรก .
      • และหน้าต่าง Visual Basic จะปรากฏขึ้น
      • เขียนโค้ดที่นั่น

      VBA Code:

      7138
      • สุดท้าย กดปุ่ม F5 เพื่อเรียกใช้โค้ด

      • หลังจากนั้น คุณจะเห็นว่ามีการเพิ่มไฟล์ PDF ที่มีชื่อสมุดงานไปยังตำแหน่งนั้นในคอมพิวเตอร์ของคุณ ด้วยเหตุนี้ ชื่อไฟล์จึงถูกรักษาไว้โดยอัตโนมัติ

      อ่านเพิ่มเติม: พิมพ์ช่วงเป็น PDF ด้วย VBA ใน Excel (5 ตัวอย่างที่ง่ายที่สุด)

      4. Excel VBA เพื่อวนข้ามแผ่นงานที่เลือกและพิมพ์ PDF

      มาดูวิธีอื่นในการพิมพ์เป็น PDF และบันทึกชื่อไฟล์โดยอัตโนมัติ

      ขั้นตอน:<2

      • ในการเริ่มต้น ให้เปิด Ribbon และเลือกตัวเลือก นักพัฒนาซอฟต์แวร์
      • จากนั้น ในการเข้าถึง Visual Basic Editor ให้คลิก บน Visual Basic .
      • การกด Alt + F11 จะเป็นการเปิด Visual Basic Editor .
      • อีกทางหนึ่ง คลิกขวา แผ่นงาน และเลือก ดูโค้ด จากเมนูที่ปรากฏ
      • ตอนนี้ จากตัวเลือกแบบเลื่อนลง แทรก เลือก โมดูล .
      • จากนั้นคัดลอกและวางโค้ด VBA ที่ตามมา

      โค้ด VBA:

      8240
      • เรียกใช้โค้ดโดยกดปุ่ม F5

      • ในที่สุด คุณจะเห็นว่า อัปโหลดไฟล์ PDF สมุดงานไปยังพื้นที่นั้นบนคอมพิวเตอร์ของคุณแล้ว ด้วยเหตุนี้ ชื่อไฟล์จึงถูกเก็บไว้โดยอัตโนมัติ

      การดำเนินการนี้จะบันทึกไฟล์เป็นหมายเลขแผ่นงานของสมุดงาน

      รหัส VBA คำอธิบาย

      5493

      โค้ดบรรทัดนี้ของ for loop มีไว้สำหรับส่งออกไฟล์ excel เป็น pdf และพิมพ์ไฟล์

      อ่านเพิ่มเติม: Excel VBA: ExportAsFixedFormat PDF พร้อม Fit to Page (3 ตัวอย่าง)

      5. พิมพ์เป็น PDF และบันทึกชื่อไฟล์โดยสัญชาตญาณใน Excel

      ตอนนี้ มาดูวิธีอื่นของ Excel VBA ในการบันทึกไฟล์ excel เป็น pdf และตั้งชื่อไฟล์ด้วยระบบอัตโนมัติ

      ขั้นตอน:

      • เริ่มต้น เปิด Ribbon และเลือก นักพัฒนาซอฟต์แวร์ จากเมนูแบบเลื่อนลง
      • จากนั้น เลือก Visual Basic เพื่อเปิด Visual Basic Editor .
      • อาจเข้าถึง Visual Basic Editor ได้ด้วยการกด Alt + F11
      • อีกทางหนึ่ง คุณอาจ คลิกขวา แผ่นงาน แล้วเลือก ดูโค้ด จากเมนูป๊อปอัป
      • หลังจากนั้น เลือก โมดูล จากเมนูแบบเลื่อนลง แทรก
      • นอกจากนี้ ให้คัดลอกและวางโค้ด VBA ต่อไปนี้

      โค้ด VBA:

      2785
      • สุดท้าย รันโค้ดโดยกด F5 บนแป้นพิมพ์ แล้วคุณจะเห็นผลลัพธ์

      <3

      • ต่อมาคุณจะเห็นว่าไฟล์ เวิร์กบุ๊ก PDF ถูกบันทึกไปยังตำแหน่งนั้นบนพีซีของคุณแล้ว ด้วยเหตุนี้ ชื่อไฟล์จึงถูกเก็บไว้โดยอัตโนมัติ

      ในตัวอย่างก่อนหน้านี้จะบันทึกไฟล์ pdf เป็นหมายเลขชีตด้วย

      คำอธิบายโค้ด VBA

      8508

      บล็อกโค้ดใช้สำหรับพิมพ์และบันทึกไฟล์ excel เป็น pdf

      อ่านเพิ่มเติม: พิมพ์เป็น PDF และส่งอีเมลโดยใช้ VBA ใน Excel (2 กรณีที่เป็นประโยชน์)

      6. ฟังก์ชัน VBA เพื่อพิมพ์ PDF และบันทึกชื่อไฟล์โดยอัตโนมัติ

      มาสำรวจวิธีอื่นๆ ของ Excel VBA ในการพิมพ์เป็น PDF และบันทึกชื่อไฟล์โดยอัตโนมัติ เราจะใช้ฟังก์ชันและบันทึกไฟล์เป็น PDF ในตัวอย่างนี้ เรายังใช้ Msgbox เพื่อส่งข้อความว่าไฟล์นั้นถูกบันทึกหรือไม่

      ขั้นตอน:

      • ในตอนเริ่มต้น ไปที่แท็บ นักพัฒนาซอฟต์แวร์ > Visual Basic > แทรก > โมดูล .
      • หรือ การคลิกขวา บนแผ่นงานจะเปิดหน้าต่างขึ้นมา จากนั้นไปที่ ดูโค้ด .
      • และสิ่งนี้จะนำคุณไปยังฟิลด์ Visual Basic Editor ซึ่งเราสามารถเขียน VBA Macros .
      • ในทางกลับกัน การกด Alt + F11 จะเป็นการเปิด Visual Basic Editor .
      • หลังจากนั้น ให้พิมพ์ VBA code.

      VBA Code:

      1691
      • และเรียกใช้โค้ดเพื่อดูผลลัพธ์โดยการกดปุ่ม ปุ่ม F5 .

      • จะปรากฏใน Msgbox และตรวจสอบให้แน่ใจว่าไฟล์ PDF พร้อมสำหรับการพิมพ์แล้ว .

      • ในทำนองเดียวกัน ก่อนหน้านี้ คุณจะสังเกตเห็นว่าไฟล์ PDF ของสมุดงานได้ถูกบันทึกไปยังตำแหน่งนั้นบนคอมพิวเตอร์ของคุณ เป็นผลให้ชื่อไฟล์ถูกรักษาไว้ตามค่าเริ่มต้น ขณะที่เราตั้งชื่อไฟล์เป็น พิมพ์ PDF ระบบจะบันทึกชื่อไฟล์เป็น พิมพ์ PDF

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

      อ่านเพิ่มเติม: มาโคร Excel เพื่อบันทึกเป็น PDF ด้วยชื่อไฟล์จากค่าเซลล์ (2 ตัวอย่าง)

      7. โค้ด Excel VBA เพื่อพิมพ์เป็น PDF และบันทึกชื่อไฟล์โดยอัตโนมัติ

      มาดูวิธีอื่นของ Excel VBA สำหรับการพิมพ์เป็น PDF และจัดเก็บชื่อไฟล์โดยอัตโนมัติ

      ขั้นตอน:

      • ในการเริ่มต้น ให้ไปที่แท็บ นักพัฒนาซอฟต์แวร์ บน Ribbon
      • อย่างที่สอง ภายใต้ส่วนโค้ด เลือก Visual Basic เพื่อเปิดใช้ Visual Basic Editor หากต้องการเปิด Visual Basic Editor ให้คลิก Alt + F11 .
      • อีกทางหนึ่ง คุณสามารถคลิกขวาบนเวิร์กชีตของคุณแล้วเลือก ดูโค้ด . ซึ่งจะนำคุณไปยัง Visual Basic Editor เช่นกัน
      • ซึ่งจะแสดงใน Visual Basic Editor ซึ่งเราจะเขียนโค้ดเพื่อสร้างตาราง จากช่วง
      • สาม จากแถบเมนูแบบเลื่อนลง แทรก เลือก โมดูล .
      • และคัดลอกและวางโค้ด VBA แสดงด้านล่าง

      โค้ด VBA:

      9932
      • จากนั้น รันโค้ดโดยคลิกปุ่ม RubSub หรือกดปุ่ม F5 แป้นพิมพ์ลัด

      • โดยเฉพาะอย่างยิ่ง Msgbox จะปรากฏขึ้น

      • ไฟล์จะถูกบันทึกเป็น PDF โดยมีชื่อไฟล์อัตโนมัติเหมือนกับในตัวอย่างก่อนหน้า

      คำอธิบายรหัส VBA

      8491

      สิ่งเหล่านี้มีไว้สำหรับรับโฟลเดอร์สมุดงานที่ใช้งานอยู่หากบันทึกสมุดงานแล้ว

      6078

      สิ่งนี้จะสร้างชื่อเริ่มต้นสำหรับการบันทึกไฟล์

      4303

      บล็อกนั้นจะส่งออกไฟล์ excel เป็น PDF ในโฟลเดอร์ปัจจุบัน

      8467

      ซึ่งจะทำให้เราเห็นข้อความยืนยันพร้อมข้อมูลไฟล์ใน Microsoft Excel

      อ่านเพิ่มเติม: พิมพ์เป็น PDF โดยใช้ปุ่มมาโครใน Excel (รูปแบบมาโคร 5 แบบ)

      8. พิมพ์แผ่นงาน Excel เฉพาะด้วยชื่อไฟล์อัตโนมัติ

      มาดูวิธี Excel VBA ที่แตกต่างกันสำหรับการพิมพ์เป็น PDF และจัดเก็บชื่อไฟล์โดยอัตโนมัติ

      ขั้นตอน:

      • อันดับแรก เลือกแท็บ นักพัฒนาซอฟต์แวร์ จาก Ribbon
      • อย่างที่สอง ใต้หมวดหมู่ โค้ด ให้เลือก Visual Basic เพื่อเปิดใช้งาน Visual Basic Editor หรือกด Alt + F11 เพื่อเปิดใช้ Visual Basic Editor
      • ให้คลิกขวาบนเวิร์กชีตของคุณและเลือก View Code .
      • ซึ่งจะแสดงใน Visual Basic Editor ซึ่งเราจะ

    Hugh West เป็นผู้ฝึกอบรมและนักวิเคราะห์ Excel ที่มีประสบการณ์สูงและมีประสบการณ์มากกว่า 10 ปีในอุตสาหกรรมนี้ เขาสำเร็จการศึกษาระดับปริญญาตรีสาขาการบัญชีและการเงิน และปริญญาโทสาขาบริหารธุรกิจ Hugh มีความหลงใหลในการสอนและได้พัฒนาแนวทางการสอนที่เป็นเอกลักษณ์ซึ่งง่ายต่อการติดตามและเข้าใจ ความรู้ความเชี่ยวชาญของเขาเกี่ยวกับ Excel ช่วยให้นักเรียนและผู้เชี่ยวชาญหลายพันคนทั่วโลกพัฒนาทักษะและความเป็นเลิศในอาชีพการงาน ฮิวจ์แบ่งปันความรู้ของเขากับคนทั้งโลกผ่านบล็อก โดยเสนอบทช่วยสอน Excel ฟรีและการฝึกอบรมออนไลน์เพื่อช่วยให้บุคคลและธุรกิจบรรลุศักยภาพสูงสุดของตนเอง