บทความ

java XML Parser ภาษาไทย

รูปภาพ
การอ่านไฟล์ xml ที่มีตัวอักษรภาษาไทย ด้วยภาษาจาวา บางครั้งจะเกิด Error โดยแจ้งว่า เป็น Invalid byte 2 of 2-byte UTF-8 sequence สาเหตุหลัก คือเรื่องของ encoding ซึ่งจำเป็นต้องใช้สำหรับการเปลี่ยนไฟล์จากรูปแบบหนึ่ง ไปสู่อีกรูปแบบหนึ่ง การแก้ปัญหาหรือการหลีกเลี่ยงไม่ให้เกิดปัญหา คือการกำหนด File Encoding ของไฟล์ XML ให้เป็น UTF-8 ในกรณีที่ ไฟล์ XML ใช้ Encoding เป็น ANSI ต้องเปลี่ยนให้เป็น UTF-8 เพื่อแก้ไขปัญหาดังกล่าว การเปลี่ยน Encoding ทำได้ โดยใช้โปรแกรม Text-editor เช่น EditPlue หรือ Notepad ซึ่งทำได้ ดังนี้ การเปลี่ยน File Encoding ด้วย EditPlus เปิดไฟล์ XML ด้วยโปรแกรม EditPlus ไปที่ Document > File Encoding > Change File Encoding... เลือก UTF-8 บันทึกไฟล์ การเปลี่ยน File Encoding ด้วย Notepad (Windows 10) เปิดโปรแกรม Notepad ไปที่ File > Open เลือกเปิดไฟล์ทั้งหมด (All Files) ไปที่ไฟล์ xml ที่ต้องการ และคลิกเลือก คลิกเปลี่ยน Encoding  คลิก Open เพื่อเปิดไฟล์ คลิก Save และปิดไฟล์ เมื่อเรียกใช้ XML Parser ของ  Java จะไม่...

มะม่วงหิมพานต์: ยาเม็ดวิตามินธรรมชาติ

รูปภาพ
มะม่วงหิมพานต์ ได้รับขนานนามว่าเป็น ยาเม็ดวิตามินธรรมชาติ (nature’s vitamin pill) มีแร่ธาตุสารอาหารหลายชนิดที่จำเป็นต่อร่างกาย เช่น ธาตุเหล็ก แมกนีเซียม ฟอสฟอรัส สังกะสี ทองแดง และแมงกานีส และวิตามินเค ซี่งส่งผลต่อสุขภาพโดยรวมของร่างกาย แมงกานีส ช่วยบรรเทาอาการปวดหัวไมเกรน ช่วยให้ความจำดีขึ้น ช่วยลดความดันโลหิต ธาตุทองแดงช่วยต้านอนุมูลอิสระ ป้องกันโรคหัวใจ และมะเร็ง แมกนีเซียมร่วมกับธาตุทองแดงช่วยทำให้กระดูกแข็งแรง แมกนีเซียมร่วมกับเมลานิน() และ อีลาสติน() ช่วยให้ข้อต่อยืดหยุ่น ช่วยให้เส้นประสาทให้ทำงานได้ดี นอกจากนี้ มะม่วงหิมพานต์ มี proanthocyanidins ซึ่งช่วยต้านการแบ่งตัวของเซลล์มะเร็ง โดยเฉพาะมะเร็งลำไส้ มะม่วงหิมพานต์ช่วยควบคุมน้ำหนัก เพราะมีอัตราส่วนของไขมันที่นักวิทยาศาสตร์ยอมรับว่า เป็นอัตราส่วนที่สุดยอดเพื่อสุขภาพ คือ มี ไขมัน saturated monounsaturated และ polyunsaturated ใน อัตราส่วน 1:2:1 นอกจากนี้ มะม่วงหิมพานต์ ยังไม่มีคอเรสเตอรอล อีกด้วย และแม้ว่า มะม่วงหิมพานต์จะมีไขมัน แต่เป็นไขมันที่ไม่เป็นอ้นตรายต่อหัวใจ และ ถ้าจะเปรียบเทียบปริมาณไขมันในมะม่วงหิมพานต์...

การใช้ Text Field ของ Actionscript 3

รูปภาพ
TextField ใน ActionScript 3 มีไว้สำหรับบรรจุข้อความ หรือภาพ และนำมาแสดงที่หน้าจอ โดยสามารถนำข้อมูลมาจากฐานข้อมูล ไฟล์ XML ไฟล์ข้อความที่เป็น Text ก็ได้ สามารถจัดรูปแบบข้อความใน TextField ได้ หรือจัดรูปแบบโดยใช้ HTML ก็ได้ เช่นกัน ตัวอย่าง การกำหนดตำแหน่ง ขนาด ของ TextField  import flash.display.Sprite; import flash.text.*; var myTextBox:TextField = new TextField();; var myText:String = "This is a test. "; myTextBox.width = 200; myTextBox.height = 50; myTextBox.multiline = true; myTextBox.wordWrap = true; myTextBox.border = true; myTextBox.borderColor = 00000000 addChild(myTextBox); myTextBox.htmlText = myText; การกำหนดตำแหน่งของ TextField ที่สัมพันธ์กับ TextField อื่น ถ้าต้องการวาง TextField ต่อกัน โดยข้อความใน TextField มีการเปลี่ยนแปลง และกำหนดให้ตำแหน่งของ TextField ปรับตามขนาดของข้อความ ดังภาพ จะทำอย่างไร จะเห็นว่า TextField เรียงต่อกันลงมา แม้ว่าข้อความใน TextField จะเปลี่ยนเพิ่มมากขึ้น หรือน้อยลง ตำแหน่งและขนาดของ TextField ก็จะปรับตามไปด้วย...

เทคนิค Acrobat Reader

รูปภาพ
ผมปวดหัวกับการใช้ Adobe Acrobat Reader หลายอย่าง ไม่ใช่เพราะ Acrobat ทำไม่ได้ แต่ผมไม่รู้ว่าทำยังไง มากกว่า หลังจากที่ค้น ๆ ดู ก็เลยเอามาเขียนไว้ กันลืม ปุ่มกลับ ใน Acrobat           ปุ่มกลับหรือ Back Button ในลักษณะเดียวกับปุ่มกลับบน Browser นั่นคือ เมื่อคลิกลิงค์ไปแล้ว คลิกปุ่มกลับ ให้กลับที่เดิม ปุ่มนี้ ไม่มีให้เห็นบน Toolbar แต่ซ่อนเอาไว้ ผมใช้ Acrobat DC ซึ่ง ปุ่มนี้จะซ่อนเอาไว้ วิธีการนำมาแสดง ทำดังนี้ คลิกขวาที่แถบเครื่องมือ เลือก Show Page Navigation Tools คลิกเครื่องหมายถูก หน้า Previous View จะมีปุ่มกลับ ให้เห็นบน Toolbar  ถ้าไม่ต้องการสร้างปุ่ม สามารถไปที่ View > Page Navigation > Previous View การซ่อนแถบเครื่องมือด้านขวา            แถบเครื่องมือด้านขวา ทำให้บริเวณที่จะอ่านเอกสารแคบลง วิธีการซ่อน           ไปที่ View > Show/Hide > Tools Pane แล้วคลิกเครื่องหมายถูกออก การจัดหน้าให้พอดีเมื่อขยายตัวหนังสือให้ใหญ่ขึ้น       ...

การกำหนดทศนิยม ในช่องแถบสูตร Formula bar ของ Excel

รูปภาพ
โดยปกติ การกำหนดทศนิยม ใช้การกำหนดรูปแบบในเซลล์ ซึ่งมีหลายรูปแบบให้เลือกอยู่แล้ว อย่างไรก็ตาม ถ้าหากมีการใช้สูตร และรวมค่าในช่องแถบสูตร (Formula bar) ซึ่งมีข้อความปนอยู่ด้วย ก็จะไม่สามารถใช้การกำหนดรูปแบบของเซลล์ได้ จะทำอย่างไรดี สูตรที่ต้องการกำหนดรูปแบบ ให้เป็นทศนิยม 2 ตำแหน่ง ในภาพ จะเห็นว่า มีการใช้สูตรในเซลล์ G4 และได้ผลลัพธ์ ค่าร้อยละ 66.6666666666667 เราต้องการให้แสดงเพียงทศนิยม 2 ตำแหน่ง เท่านั้น วิธีการ เนื่องจากไม่สามารถใช้การกำหนดรูปแบบเซลล์ เพื่อกำหนดทศนิยม เป็น 2 ตำแหน่งได้ เพราะมีข้อความปนอยู่ด้วย และนอกจากนี้ สูตร Format() ก็ไม่สามารถใช้ได้ เนื่องจาก ในแถบสูตร หรือ Formula bar ไม่สามารถใช้สูตร หรือ Function ของ VBA ได้ ใช้ได้แต่ Worksheet Function เท่านั้น ทางออกคือ การใช้ TEXT() ซึ่งเป็น Worksheet Function  โดยมีรูปแบบ ดังนี้                                          TEXT(ค่าตัวเลข, รูปแบบ) ฟ้งก์ชัน TEXT สามารถรับรูปแบบได้หลายอย่าง คือ ข้อมูลเดิ...

เทคนิค Access VBA

รูปภาพ
เป็นเทคนิค 4 อย่าง ที่เขียนเอาไว้ กันลืม การใช้ฟอร์มย่อย หรือ subform การใช้ Lookup ในฟิลด์ของตาราง การสร้างฟอร์มค้นหาข้อมูล หรือ Search การยกเลิก Layout การใช้ฟอร์มย่อย หรือ subform การอ้างอิง Control ใน ฟอร์มย่อย จากฟอร์มหลัก ใช้รูปแบบ คือ Forms![main form name]![subform control name].Form![control name] -Forms เป็นการอ้างถึง Collection ของฟอร์ม - [main form name]  คือชื่อฟอร์มหลัก - [subform control name] คือชื่อที่ตั้งเป็นชื่อ Control สำหรับใส่ฟอร์มย่อย ไม่ใช่ชื่อฟอร์มย่อย แต่ก็อาจจะเป็นชื่อเดียวกันได้ ถ้าตั้งชื่อเหมือนกัน นั่นคือ ฟอร์มย่อย ต้องอยู่ใน Control ของฟอร์มหลัก เวลาอ้างถึงจึงต้องอ้างชื่อของ Control ที่เป็นที่อยู่ของฟอร์มย่อย -Form หมายถึงฟอร์มย่อย -[control name] คือชื่อของ control ที่ต้องการอ้างถึง ตัวอย่าง Forms![frmLearnerUpdate]![learner_subform].Form![txtFname] สามารถทำให้สั้นเข้า โดยใช้เครื่องหมาย . แทนเครื่องหมาย ! และใช้คำว่า Me แทนฟอร์มหลัก เช่น Me.[learner_subform].Form.[txtFname] การเปิดฟอร์มย่อยแบบว่าง ๆ โดยไม่มีข้อมูลใด ๆ ดังภาพ โดย...

การใช้โปรแกรม 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 จะติดตั้งไว้ในห้อง ...

การเปลี่ยนสีตัวอักษรตามเงื่อนไขบนรายงาน ของ 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 วิธีการจัดรูปแบ...