บทความ

การใช้โปรแกรม Inno Setup ช่วยติดตั้งโปรแกรม

รูปภาพ
โปรแกรม Inno Setup พัฒนาโดย Jordan Russell เป็นโปรแกรมฟรี (Freeware) สำหรับสร้าง โปรแกรมการติดตั้ง หรือ Setup บนเครื่องคอมพิวเตอร์ ซึ่งเป็นที่นิยมใช้กันมาก และมีประสิทธิภาพสูง รุ่นล่าสูดในขณะนี้ คือ รุ่น 5.5.5 สำหรับรุ่น 5.5.5 นี้ยังไม่มีภาษาไทยรองรับ แต่สามารถจัดการให้มีได้ โดยการแก้ไขไฟล์ default.isl วิธีการใช้งาน ดาวน์โหลดโปรแกรมได้ที่ http://www.jrsoftware.org และนำมาติดตั้งบนเครื่องคอมพิวเตอร์ วิธีการใช้โปรแกรม เปิดโปรแกรม จะมีหน้าจอปรากฎให้เลือกวิธีการสร้างไฟล์ติดตั้ง ในตอนแรกให้เลือกใช้ตัวช่วยสร้าง หรือ Wizard ทำให้ไม่ต้องเขียนสคริปเอง  ทำตามหน้าจอ โดยคลิก OK และ คลิก Next เพื่อกำหนดไฟล์ที่จะให้ติดตั้งและไฟล์ประกอบอื่น ๆ เมื่อทำตามหน้าจอเสร็จแล้ว ให้บันทึกเป็นไฟล์ นามสกุล *.iss ซึ่งเป็น script สำหรับสร้างไฟล์ติดตั้งโปรแกรม ภายหลังสามารถเปิดไฟล์นี้มาแก้ไขได้ ไม่ต้องสร้างใหม่ เมื่อบันทึกเป็นไฟล์ *.iss แล้ว โปรแกรม inno จะเปิดไฟล์นี้ ซึ่งสามารถแก้ไขเพิ่มเติม เช่น เปลี่ยน folder สำหรับติดตั้ง ซึ่งของเดิม หรือ Default จะติดตั้งไว้ในห้อง Program F

การเปลี่ยนสีตัวอักษรตามเงื่อนไขบนรายงาน ของ Access 2010

รูปภาพ
ในการทำรายงานผ่านหน้าจอ บางครั้งเราต้องการเน้นสีตัวอักษรให้ชัดเจน เช่น ถ้าเป็นรายงานการส่งเงิน ถ้าขาดส่ง ต้องการให้ขึ้นตัวอักษรสีแดง ถ้าเหลืออีก 1 เดือนจะต้องส่งเงิน ให้เป็นตัวอักษรสีชมพู นอกนั้น เป็นตัวอักษรตามปกติ ดังภาพ วิธีนี้ถ้าจะใช้ VBA กำหนดลักษณะของตัวอักษรใน Control ก็สามารถทำได้ แต่มีวิธีที่ง่ายกว่ามาก คือการใช้การกำหนดรูปแบบตามเงื่อนไข ซึ่งทำได้ ดังนี้ เปิดรายงาน ในมุมมองออกแบบ ในตัวอย่างนี้ ต้องการกำหนดเงื่อนไข ตามจำนวนเดือนที่เหลือ คือ ถ้าเหลือ 1 เดือน กำหนดให้ตัวอักษรเป็นสีชมพู ถ้าไม่เหลือเดือน ให้กำหนดสีตัวอักษร เป็นสีแดง Control ที่มีข้อมูลจำนวนเดือนที่เหลือ คือ monthsLeft ซึ่งเราจะใช้เป็นตัวกำหนดเงื่อนข คลิกเลือก Control ที่ต้องการให้ตัวอักษรเปลี่ยนทั้งหมด ไปที่เมนู รูปแบบ >  การจัดรูปแบบตามเงื่อนไข คลิกสร้างกฎ ซึ่งเป็นการระบุว่า ต้องการสร้างเงื่อนไขเพื่อจัดรูปแบบ จะเปิดหน้าต่างใหม่ ให้เลือก นิพจน์ที่จำเป็น เพื่อสร้างเงื่อนไขเอง และในช่องเงื่อนไข ให้พิมพ์เงื่อนไขที่ต้องการ ในที่นี้คือ ถ้าข้อมูลในฟิลด์ [monthsLeft] น้อยกว่าหรือเท่ากับ 0 เลือกรูป

การจัดการเกี่ยวกับวันที่ ใน Excel

รูปภาพ
คงต้องยอมรับกันว่า เรื่องของวันที่ใน Excel ทำให้ปวดหัวอยู่ไม่น้อยทีเดียว วันนึงผมได้ไฟล์จากที่อื่นมาเปิด เพื่อถ่ายโอนเข้าโปรแกรม Access วันที่ของเดิม เขียนว่า 1-มี.ค.-58 ทำไปทำมา กลายเป็น 1/3/1958 พอเป็นภาษาไทย ก็กลายเป็น 1/3/2501 ห่างกัน 57 ปี อย่างนี้ก็ปวดหัวละซี เข้าใจว่า ไฟล๋ของเก่า คงใช้ปฏิทินแบบตะวันตก และพิมพ์เข้าไปแบบ พุทธศักราช ผลที่ได้ก็จึงเป็นปี ค.ศ. ไป เวลาเอามาคำนวณ หรือถ่ายโอน ก็เกิดปัญหาธรรมดา หลักใหญ่ของเรา คือ ต้องกำหนดรูปแบบให้ถูก โดยกำหนดให้ใช้ปีพุทธศักราช และ คลิกการป้อนให้สอดคล้องกัน การตั้งค่าดังกล่าว ให้คลิกเลือกเซลล์ที่จะป้อนวันที่ แล้วกด Ctrl +1 จะเปิดหน้าจอให้จัดรูปแบบเซลล์ ถ้าทำอย่างนี้ได้ จะหมดปัญหาเรื่องวันที่ ไม่มีเรื่องปวดหัวกวนใจ แต่ถ้าเลือกไม่ได้ ปัญหาเข้ามาเอง ก็ต้องจัดการให้อยู่หมัด มีสูตรเกี่ยวกับวันที่ ของ Excel ที่ช่วยแก้ไขสถานการณ์ได้ดีมาก คือ สูตร  Date() เป็นสูตรที่ยืดหยุ่นมาก สูตรคือ Date(year, month, day) ตัวอย่างการใช้ การเพิ่ม เดือน อีก 3 เดือน   คือ  =Date(2015, 2+3,20 จะได้ 20 พฤษภาคม 2558 เพิ่มจำนวนวัน โปรแกรมคิดเป็นเ

การจัดรูปแบบข้อมูล Excel ด้วย VBA และนำเข้าไปยัง Access

รูปภาพ
การถ่ายโอนข้อมูล จาก Excel 2010 ไปยัง Access 2010 สามารถทำได้หลายวิธี เช่น การใช้เมนู ข้อมูลภายนอก หรือ External Data แต่ปัญหาอยู่ที่การจัดโครงสร้างของข้อมูล ถ้าโครงสร้างระหว่าง Excel และ Access ไม่ตรงกัน การถ่ายโอนก็จะทำได้ค่อนข้างลำบาก ทั้งนี้เพราะ การถ่ายโอนข้อมูลจาก Excel ไปยัง Access นั้น หัวตารางของ Excel จะต้องเหมือนกับชื่อ ฟิลด์ในตารางที่จะนำข้อมูลเข้า หรือมิฉะนั้นก็นำเข้าเป็นตารางใหม่ แล้วค่อยจัดการภายหลัง ในตัวอย่างนี้จะเป็นการถ่ายโอนเข้าตารางที่มีอยู่แล้ว ตัวอย่าง ต้องการถ่ายโอนข้อมูล ใน Excel ลงใน ตาราง ของ Access ต่อไปนี้ โครงสร้างของตาราง Access ที่ต้องการถ่ายโอนข้อมูลเข้ามา มีดังนี้ จะเห็นว่า โครงสร้างของข้อมูลใน Excel ไม่เหมือนกับใน Access ซึ่งเป็นเรื่องธรรมดา การถ่ายโอนข้อมูล จาก Excel จึงจำเป็นต้องจัดรูปแบบของข้อมูลใน Excel ให้เหมือนในตาราง ของ Access โดยถ้าจะให้ดี ก็ต้องเพิ่มชื่อหัวตาราง ให้เหมือนกับชื่อฟิลด์ในตารางของ Access ก็จะทำให้การถ่ายโอน สะดวก และง่ายได้ รูปแบบที่ต้องการ คือ ฟิลด์ ID เป็น AutoNumber จึงไม่ต้องนำเข้าจาก Excel วิธีการจัดรูปแบ

การใช้ไฟล์เสียง mp3 ใน Blogger ร่วมกับ Google Site

รูปภาพ
การใช้เสียงใน Blogger หรือ Blogspot มี 2 ขั้นตอนใหญ่ ๆ คือ การนำไฟล์เสียงไว้บน Server ในตัวอย่างนี้จะใช้ Google site ซึ่งสามาชิกอีเมลของ Google ทุกคนสามารพถใช้ได้ฟรี การลิงค์ไฟล์เสียงในหน้าของ Blogger หรือ  Blogspot ตัวอย่างการใช้เสียง ใน Blogger หรือ Blogspot Your browser does not support this audio (เดี่ยวขลุ่ย เพลงลมพัดชายเขา ๒ ชั้น โดยครูสุวิทย์ แก้วกระมล) การสร้าง Site บน Google Site และ upload ไฟล์ ถ้ายังไม่มีอีเมลของ Google ให้สมัครอีเมลก่อน login เข้าใช้งานอีเมล ไปที่หน้า Google Site โดยพิมพ์ https://sites.google.com/ จะเห็นปุ่มให้ Create ไชต์  คลิกปุ่ม CREATE และทำตามหน้าจอ โดยตั้งชื่อ และเลือก Template แนะนำให้เลือก Blank Template จะง่ายและสะดวก เมื่อได้ Site แล้ว ที่หน้าแรก ให้คลิก Edit เลื่อนลงมาด้านล่าง จะเห็นปุ่ม ADD FILE เพื่อส่งไฟล์ขึ้น Server ให้คลิกและเลือกไฟล์ที่ต้องการ จะเห็นไฟล์ที่ส่งขึ้นไป ดังภาพ คัดลอก URL ของไฟล์นี้ไว้ สำหรับใช้ในหน้า Blog ต่อไป เช่น http://sites.google.com/site/thongjoon/Home/lompadChaiKhao2.mp3

การสร้าง popup ที่มี Scroll bar ใน Word ด้วย vba

รูปภาพ
บางครั้งเราต้องการใช้ฟอร์มในโปรแกรม MS Word เพื่อแสดงข้อความบางอย่าง โดยให้แสดงเมื่อมีการกดปุ่ม ในกรณีของผม ผมใช้ Word สร้างเป็นบทเรียนปฏิสัมพันธ์ โดยกำหนดให้มีการฟังเสียงภาษาอังกฤษ และเมื่อกดปุ่มดู Script ก็จะมีหน้าจอใหม่ เป็น Popup เพื่อแสดงข้อความ พร้อมทั้งมี Scroll bar ให้สามารถเลื่อนขึ้นลงได้ วิธีการ มี 2 ขั้นตอนคือ 1. การสร้างฟอร์มใหม่ที่มี Scroll bar 2. การสร้างปุ่ม เรียกใช้งานฟอร์มที่สร้างขึ้น การสร้างฟอร์มใหม่ที่มี Scroll bar  เปิดใช้งานเมนู นักพัฒนา หรือ Developer tab ดูวิธีการที่  http://www.thongjoon.com/2015/04/media-player-word2010.html พิมพ์ข้อความตามต้องการ กดปุ่ม Alt + F11 เพื่อเปิดหน้าจอเขียนโค้ด ไปที่  Insert > UserForm ปรับขนาดของฟอร์มให้ได้ขนาดตามต้องการ โดยใช้เมาส์ลากที่มุมขอบของฟอร์ม เลือกเครื่องมือ กล่องข้อความ หรือ Textbox ในกล่องเครื่องมือ  กำหนด Property ของฟอร์ม ให้สามารถทำงานอย่างอื่นได้ ในขณะที่ฟอร์มเปิดอยู่ โดยกำหนด showModal ให้เป็น False ทั้งนี้เพื่อให้สามารถทำงานอื่นได้ ในขณะที่เปิดฟอร์มนี้ค้างไว้ ถ้า showModal มีค่าเป็น