บทความ

การแก้ปัญหา #N/A ของสูตร vlookup

รูปภาพ
สูตร vlookup() มีรูปแบบการใช้ ดังนี้ VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup]) lookup_value คือ ข้อมูลที่ต้องการให้ค้นหา table_array คือ ตารางข้อมูลที่ไปทำการค้นหา col_index_num คือ ตำแหน่งคอลัมน์ในตารางข้อมูลที่ต้องการให้นำมาแสดงเมื่อพบข้อมูลที่ค้นหาแล้ว ตำแหน่งคอลัมน์แรก คือ 1 range_lookup คือ ลักษณะการค้น      ถ้าต้องการให้ค้นคำที่เหมือนกับคำค้นทุกประการ ให้กำหนดเป็น False หรือ 0      ถ้าให้ค้นแบบใกล้เคียง ให้กำหนดเป็น True หรือ 1 และต้องเรียงข้อมูลในตารางจากน้อยไปหามาก      ถ้าไม่ระบุ Excel จะใช้ถือว่าเป็น true สูตร vlookup() ของ Excel เป็นสูตรที่มีประโยชน์ แต่ก็มีข้อที่ต้องระวังหลายอย่างเหมือนกัน มิฉะนั้น จะไม่แสดงค่าตามที่ต้องการ เช่น อาจจะแสดงค่า  #N/A เป็นต้น ดูตัวอย่างข้างล่างนี้ ท่านทราบหรือไม่ว่า ทำไมสูตร vlookup() จึงไม่แสดงชื่อที่ต้องการ ถ้าพิจารณาจากสูตรที่ใช้  จะเห็นว่า เป็นการค้นหาแบบ exact match คือ เหมือนคำค้นที่ต้องการ คือ ให้แสดงชื่อคนในตาราง D26:J36 ที่ได้คะแ...

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 เลือ...