:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

pdf และคำสั่งบันทึกเป็น Pdf

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Bafnet
Member
Member
Posts: 167
Joined: Thu Jun 09, 2011 11:52 pm

pdf และคำสั่งบันทึกเป็น Pdf

#1

Post by Bafnet »

สวัสดีครับอาจารย์
วันนี้ขออนุญาตเปิดกระทู้ใหม่เผื่อเพื่อนๆที่มีความสนใจเช่นเดียวกัน

การสั่งพิมพ์ไฟล์ Word

Code: Select all

Sub Prword
Set wdApp = New Word.Application
wdApp.Visible = True
Set wdDoc = wdApp.Documents.Open("C:\Program Files\DumP\DATA\doc\คำขอไถ่ถอน.doc")
wdApp.Activate
Set wdApp = Nothing
End sub
ผมปรับจาก wdApp.PrintOut เป็น wdApp.Activate
เพราะเนื่องจากปัญหาที่ไม่สามารถลบหน้าว่างในเวิร์ดที่ไม่ต้องการได้ เลยให้ผู้ใช้เลืกพิมพ์จากเวิร์ดที่ Activateโดยตรง

อาจารย์ครับแล้วถ้าสั่งพิมพ์ไฟล์ Pdf เขียนคำสั่งอย่างไรครับ และการตั้งค่า References ต้องเลือกตัวไหนครับ
ผมเข้าไปดู เห็นมีอยู่ 4-5 ตัว :roll:
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: pdf และคำสั่งบันทึกเป็น Pdf

#2

Post by snasui »

Bafnet wrote: อาจารย์ครับแล้วถ้าสั่งพิมพ์ไฟล์ Pdf เขียนคำสั่งอย่างไรครับ และการตั้งค่า References ต้องเลือกตัวไหนครับ
ผมเข้าไปดู เห็นมีอยู่ 4-5 ตัว
:D อ่านแล้วยังไม่เคลียร์ครับ สั่งพิมพ์จาก Word Version ไหนครับเห็นไฟล์เป็นนามสกุล .doc สำหรับการสั่งพิมพ์เป็น PDF นั้นสามารถทำได้ 3 แบบเป็นอย่างน้อย

1. ใช้ Word 2007 และใช้ Add-ins มาช่วย จะสั่ง Save เป็น PDF ได้เลย
2. ใช้ Word 2010 สามารถ Save เป็น PDF ได้เลย
3. ใช้ Word 2003 ต้องลงโปรแกรมเสริมเช่น PDF Editor และ Print ผ่าน Driver ของโปรแกรมพวกนี้ก็จะได้ไฟล์ PDF

การตั้งค่า References ปกติจะเป็นการเรียกใช้ Object ต่าง ๆ ของโปรแกรมอื่น หากต้องการเรียกใช้ Object ของโปรแกรมที่เกี่ยวกับ PDF ใดก็เลือกตัวนั้นครับ

จากที่เล่ามาเมื่อให้ผู้ใช้เลือกพิมพ์เองแล้วไม่ทราบว่าต้องการเขียน Code ให้พิมพ์เองจังหวะไหน หรือว่าเป็นคนละคำถามแยกจากกัน :?:
Bafnet
Member
Member
Posts: 167
Joined: Thu Jun 09, 2011 11:52 pm

Re: pdf และคำสั่งบันทึกเป็น Pdf

#3

Post by Bafnet »

สวัสดีครับ
snasui wrote:จากที่เล่ามาเมื่อให้ผู้ใช้เลือกพิมพ์เองแล้วไม่ทราบว่าต้องการเขียน Code ให้พิมพ์เองจังหวะไหน หรือว่าเป็นคนละคำถามแยกจากกัน
งานที่กำลังทำอยู่ มีเมนูสำหรับจัดทำสัญญาเงินกู้ ซึ่งเมื่อก่อนผมต้องนั่งสร้างเอกสารใหม่ใน Excell ทั้งเอกสาร
ก็เลยคิดว่าถ้าสั่งพิมพ์ เอกสาร Word ได้ คงไม่ต้องมานั่งสร้างเอกสารใหม่ใน Excel
คือมี comboBox รายชื่อเอกสาร ผู้ใช้เลือกอยากได้เอกสารการกู้ใดๆก็สั่งพิมพ์จากปุ่มคำสั่งได้เลย
แต่ติดปัญหาที่ว่า เอกสาร Word มีหน้าที่ไม่ต้องการอยู่ ซึ่งผมพยายามลบเนื้อหาจนเป็นหน้าว่างเปล่า
แต่จำนวนหน้าเอกสารก็ไม่ลดลง พอPrintPreview หน้าว่างก็ยังคงปรากฎซึ่งผมก็ไม่เข้าใจ Word
จะกำหนดพื้นที่พิมพ์เหมือนในเอ็กเซลก็หาไม่เจอ ครั้นจะสั่งPrintOut ก็จะได้หน้าที่ไม่ต้องการมาด้วย
เมื่อคืนพยายามนั่งปรับเปลี่ยนทั้ง

Code: Select all

Set wdDoc = wdApp.Documents.Open("C:\Program Files\DumP\DATA\doc\คำขอไถ่ถอน.doc")
wdApp.PrintPreview
ก็ไม่สำเร็จ ยอมรับครับว่าพอไปใช้ Activate ดูจะวุ่นวายกับผู้ใช้ เพราะไม่สามารถจบงานได้ในจุดเดียว
โดยเฉพาะผู้ใช้ที่มีอายุ
หากระบุหน้าที่จะพิมพ์ได้ หรืออย่างน้อยก็โชว์หน้าPrintPreview ก็คงดี

ส่วนเรื่อง Pdf ผมคงอธิบายผิดไป ความต้องการคือลักษณะเดียวกันกับการสั่งพิมพ์ Word ครับ
เช่นมี Test.pdf ที่ตำแน่ง("C:\Program Files\DumP\DATA\doc\คำขอไถ่ถอน.doc")
แล้วต้องการสั่งพิมพ์
(ไม่ใช่สั่งพิมพ์ excell เป็นPdf ครับ)
ที่ต้องการคำสั่งนี้เพราะปัจจุบันธนาคารเริ่มจัดทำและจัดเก็บเอกสารในรูปแบบสกุล.pdf

ขอบคุณครับ อาจารย์ช่วยปรับเพิ่มให้หน่อยได้ไหมครับ :roll:
Bafnet
Member
Member
Posts: 167
Joined: Thu Jun 09, 2011 11:52 pm

Re: pdf และคำสั่งบันทึกเป็น Pdf

#4

Post by Bafnet »

Bafnet wrote:เช่นมี Test.pdf ที่ตำแน่ง("C:\Program Files\DumP\DATA\doc\คำขอไถ่ถอน.doc")
แก้ไขตำแหน่ง"C:\Program Files\DumP\DATA\doc\Test.pdf"
ขอบคุณครับ
Bafnet
Member
Member
Posts: 167
Joined: Thu Jun 09, 2011 11:52 pm

Re: pdf และคำสั่งบันทึกเป็น Pdf

#5

Post by Bafnet »

snasui wrote:สั่งพิมพ์จาก Word Version ไหนครับเห็นไฟล์เป็นนามสกุล .doc
ลืมชี้แจงครับขออภัย
2003 ครับ เอกสารที่โหลดจากธนาคารเป็น 2003 ครับ
เมื่อคืนลอง Save As เป็น docx มันก็บอกว่า
1.รุ่นเก่า โครงสร้างเอกสารอาจเปลี่ยนแปลง
2.ไม่สามารถบันทึกเอกสารที่มีโครงการ VB ได้ ต้องเป็น .docm
3.แปลงแล้วรูปแบบเอกสารเพี้ยนครับ
เลยต้องคงเป็น.doc
Bafnet wrote:หากระบุหน้าที่จะพิมพ์ได้ หรืออย่างน้อยก็โชว์หน้าPrintPreview ก็คงดี
Bafnet wrote:ส่วนเรื่อง Pdf ผมคงอธิบายผิดไป ความต้องการคือลักษณะเดียวกันกับการสั่งพิมพ์ Word ครับ
เช่นมี Test.pdf ที่ตำแน่ง("C:\Program Files\DumP\DATA\doc\คำขอไถ่ถอน.doc")
แล้วต้องการสั่งพิมพ์
(ไม่ใช่สั่งพิมพ์ excell เป็นPdf ครับ)
ที่ต้องการคำสั่งนี้เพราะปัจจุบันธนาคารเริ่มจัดทำและจัดเก็บเอกสารในรูปแบบสกุล.pdf
x.jpg
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31176
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: pdf และคำสั่งบันทึกเป็น Pdf

#6

Post by snasui »

Bafnet wrote:แต่ติดปัญหาที่ว่า เอกสาร Word มีหน้าที่ไม่ต้องการอยู่ ซึ่งผมพยายามลบเนื้อหาจนเป็นหน้าว่างเปล่า
แต่จำนวนหน้าเอกสารก็ไม่ลดลง พอPrintPreview หน้าว่างก็ยังคงปรากฎซึ่งผมก็ไม่เข้าใจ Word
จะกำหนดพื้นที่พิมพ์เหมือนในเอ็กเซลก็หาไม่เจอ ครั้นจะสั่งPrintOut ก็จะได้หน้าที่ไม่ต้องการมาด้วย
ตัวอย่าง Code ด้านล่างเป็นการสั่งให้พิมพ์เฉพาะหน้าที่ต้องการครับ ลองประยุกต์ใช้ดูครับ

Code: Select all

Sub OpenWordPrintAndClose()
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Set wdApp = New Word.Application
wdApp.Visible = True
Set wdDoc = wdApp.Documents.Open("D:\Test.doc")
wdApp.PrintOut Filename:="", Range:=wdPrintRangeOfPages, Copies:=1, Pages:="1,3-6,9-11"
wdApp.Quit
Set wdApp = Nothing
End Sub
สำหรับการสั่ง Print PDF โดย VBA ผ่านโปรแกรม PDF ดูตัวอย่างที่นี่ครับ http://cuisine-america.com/software-ame ... -File.html
Post Reply