โปรแกรมสร้างใบแจ้งหนี้ PDF อัตโนมัติ ด้วย Excel VBA Automatic PDF Invoice Using Excel VBA [แจกไฟส์ฟรี]-หน้าปก

โปรแกรมสร้างใบแจ้งหนี้ PDF อัตโนมัติ ด้วย Excel VBA Automatic PDF Invoice Using Excel VBA [แจกไฟส์ฟรี]

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

Table of Contents

1.ทำไมต้องใช้ Excel VBA นี้สำหรับการสร้างใบแจ้งหนี้  PDF?

1.1) เพิ่มประสิทธิภาพ 

ลองนึกภาพนะครับ ถ้าหากใน 1 วันมีคนมาซื้อสินค้าบริษัทเรา 10 คน และใน 10 คนนี้เป็นลูกค้าเก่าที่เคยซื้อกับเราอยู่แล้ว 3 คน จะดีกว่าไหมถ้าหากเรามีการเก็บฐานข้อมูลลูกค้าเก่าไว้หมดแล้ว และเพิ่มข้อมูลเฉพาะลูกค้าใหม่ที่มาซื้อเพิ่มเติม โปรแกรมนี้ผมมีการวางระบบฐานข้อมูลแบบง่ายๆในการเก็บข้อมูลลูกค้าเก่า และมีการผูกสูตร Excel ดึงข้อมูลฐานลูกค้านั้นมาหน้าใบแจ้งหนี้แบบอัตโนมัติให้แล้ว

1.2) ลดเวลาการทำงาน

ผมมีเขียน Code VBA ให้แล้วในไฟส์สามารถกด Run เพียงรอบเดียวจะสามารถสร้างใบแจ้งหนี้แบบอัตโนมัติ 10 ใบได้ทันที (เอาเวลาไปทำอย่างอื่นระหว่างรอได้เลยครับ)

1.3) ลดข้อผิดพลาด

เนื่องจากผมมีผูกสูตร Excel ไว้หมดแล้ว จะกรอกเฉพาะ Sheet หน้าฐานข้อมูลเพียงอย่างเดียวก็เพียงพอในการสร้างใบแจ้งหนี้

1.4) สำหรับเจ้าของธุรกิจขนาดเล็กที่ไม่ต้องการลงทุนมาก

ในหลายๆบริษัทอาจจะไปซื้อโปรแกรมแบบเสียเงินมาเป็นหลักพัน แต่ในบทความนี้ผมแจกไฟส์นี้ให้ฟรีครับ (มูลค่าไฟส์ที่แจกนี้น่าจะหลักร้อยครับ)

2.อธิบายความหมายแต่ละส่วนของโปรแกรม สร้างใบแจ้งหนี้ PDF Excel VBA

ในไฟส์นี้จะแบ่งออกเป็นทั้งหมด 4 Sheet นะครับ โดยจะแบ่งเป็น INVOICE, ออเดอร์, ข้อมูลสินค้า, ข้อมูลลูกค้า

2.1) Sheet Invoice

  • สามารถแก้ไขแบบฟอร์ม เช่น ที่อยู่บริษัท, Logo, หมายเหตุได้ตามสะดวกเลยครับ
  • ด้านขวามือผมมีเขียน Macro Assign ในปุ่มให้
    • Run Invoice PDF Individual : เมื่อกดจะ Save ไฟส์ PDF เฉพาะอันปัจจุบัน
    • Run Invoice PDF Batch : เมื่อกดจะ Save ไฟส์ PDF ในคอลัมน์ U ทั้งหมด
    • Clear : เมื่อกดจะลบข้อมูลในหน้า Invoice
  • File Name : Save ชื่อไฟส์ INV + เลขที่ใบส่งสินค้า
  • Save Path : เอา Path ที่เราต้องการ Save มาวางไว้
  • คอลัมน์ Run Invoice Batch : เอาหมายเลขที่ใบส่งสินค้าทั้งหมดมาวางไว้ที่จะ Run (เมื่อกดปุ่ม Run Invoice PDF Batch จะ Run เป็น PDF ท้ังหมด

2.2) Sheet ออเดอร์

  • Order Date : วันที่สั่งของ
  • เลขที่ใบส่งสินค้า : จะเป็นตัวเลข “ปี-เดือน-ลำดับ” ซึ่งผูกสูตรว่าหากมีการ Run เลขในตำแหน่งนี้เพิ่มเติมจะให้ตีเส้นใต้สีแดงเพื่อให้สามารถอ่านง่าย รวมถึง Sheet หน้า Invoice จะดึงข้อมูลหน้านี้ไป
  • รหัสลูกค้า : เมื่อกรอกเสร็จจะไปดึงข้อมูลลูกค้ามา
  • รหัสสินค้า : เมื่อกรอกเสร็จจะไปดึงข้อมูลสินค้ามา
  • จำนวนหน่วย : กรอกจำนวนที่ซื้อ 

2.3) Sheet ข้อมูลสินค้า

  • รหัสสินค้า : ตั้งรหัสสินค้าให้จำหน่าย เช่นร้านขายเฟอร์นิเจอร์ ผมสมมติรหัส Furniture Table Round (โต๊ะกลมไม้ยางพารา) ก็กำหนดรหัสเป็น FUR-TBL-RND
  • ชื่อสินค้า : กรอกชื่อสินค้าลงไป
  • ราคาหน่วย : กรอกราคาขาย
  • ส่วนลด : กรอกส่วนลด (จะดึงไปคำนวนในหน้า Invoice)

2.4) Sheet ข้อมูลลูกค้า

  • รหัสลูกค้า : Run หมายเลขลูกค้าไปเรื่อยๆ
  • ชื่อ : กรอกชื่อลูกค้า
  • นามสกุล : กรอกนามสกุลลูกค้า
  • ที่อยู่ : กรอกที่อยู่ลูกค้า
  • เบอร์โทร : กรอกเบอร์โทรลูกค้า
  • รหัสผู้เสียภาษี : กรอกรหัสผู้เสียภาษีลูกค้า

3.วิธีการใช้งานไฟส์นี้

3.1) ปรับโครงสร้าง Template หน้าแรกให้เหมาะสมกับบริษัทของเราเอง

  • เปลี่ยนโลโก้, ชื่อ ที่อยู่บริษัท, กำหนดเงื่อนไขต่างๆ ให้เหมาะสมกับบริษัทเราเช่น หมายเหตุ, พนักงานขาย, เงื่อนไขกำชำระ

3.2) ปรับข้อมูลสินค้า

  • ปรับข้อมูลสินค้าให้สอดคล้องกับบริษัทเรา (ตัวอย่างของผมเป็นร้านทำ เฟอร์นิเจอร์)

3.3) กรณีลูกค้าใหม่มาซื้อ

  • กรอกข้อมูลลูกค้าใหม่ลงไปกรอกใน Sheet ข้อมูลลูกค้า
  • กรอกข้อมูลออเดอร์ลงไปในแต่ละช่อง ในส่วน รหัสลูกค้าและรหัสสินค้าจะต้องสอดคล้องกับข้อมูลสินค้าและข้อมูลลูกค้า

3.4) กรณีลูกค้าเก่ามาซื้อ

  • ไม่ต้องกรอกข้อมูลลูกค้าแล้วเพราะเคยมีฐานข้อมูลเก่า
  • กรอกข้อมูลออเดอร์ลงไปในแต่ละช่อง ในส่วน รหัสลูกค้าและรหัสสินค้าจะต้องสอดคล้องกับข้อมูลสินค้าและข้อมูลลูกค้า

3.5) สร้างใบแจ้งหนี้ใบเดียว

  • เลือกสถานที่ Save File เอา Path มาใส่ใน Cell X4
  • ให้นำเลขที่ใบส่งสินค้ามาใส่ใน Sheet Invoice
  • กด Run Invoice PDF individual

3.6) สร้างใบแจ้งหนี้หลายใบ

  • เลือกสถานที่ Save File เอา Path มาใส่ใน Cell X4
  • ให้นำเลขที่ใบส่งสินค้าหลายๆ ที่จะ Run อันมาใส่ในคอลัมน์ U
  • กด Run Invoice PDF Batch

4.การเขียน Code Automatic Invoice Excel VBA

  • Sub RunInvoicePDFIndividual()
Sub RunInvoicePDFIndividual()
   Application.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
   Range("X5") & "\" & Range("X4") & ".pdf", Quality:=xlQualityStandard _
   , IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
   False
End Sub
  • Sub RunInvoicePDFBatch()
Sub RunInvoicePDFBatch()
    n = WorksheetFunction.CountA(Columns("U")) - 1
    For i = 1 To n
        Range("U" & i + 2).Select
        Selection.Copy
        Range("J10").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Application.CutCopyMode = False
        Application.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            Range("X5") & "\" & Range("X4") & ".pdf", Quality:=xlQualityStandard _
            , IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
            False
    Next
      MsgBox "Run Invoice PDF Batch Complete", vbInformation
End Sub
  • Sub Clear()
Sub Clear()
    Range("J10") = ""
End Sub

5.กรอกอีเมลของคุณด้านล่าง แล้วรับลิงก์ดาวน์โหลด โปรแกรมสร้างใบแจ้งหนี้ Excel VBA Automatic PDF Invoice Using Excel VBA ทันที!

6.คลิปวีดีโอสอน โปรแกรมสร้างใบแจ้งหนี้ PDF อัตโนมัติ ด้วย Excel VBA

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

ลองดูบทความเพิ่มเติมได้ดังนี้

ปรึกษาเรื่องข้อมูล

รับปรึกษาหรือสอนเรื่องข้อมูล Excel, Data Visulization, Power BI, Dashboard สามารถติดต่อเข้ามาได้ที่