บทความ

สาระเทคนิค access vba

รูปภาพ
การเปลี่ยนภาพที่ปุ่ม Command Button สร้างปุ่ม โดยไม่ใช้ Command Wizard (คลิก Cancel ถ้ามีหน้าจอ wizard) คลิกขวาที่ปุ่มเพื่อเปิด Property Sheet เลือก Picture ถ้าต้องการใช้รูปที่สร้างเองบนปุ่ม ให้คลิก Broswe ภาพที่จะนำมาใช้งาน ควรเป็นภาพ png ที่มี Transparent และมีขนาดเล็ก การเรียกใช้หน้าจอ Attach File ด้วย VBA สร้างตารางที่มี Field หนึ่ง ที่ data type เป็น Attachment สร้างฟอร์ม โดยกำหนดให้ตารางที่สร้างเป็น Record source และลาก Field ที่เป็น Attachment มาวางไว้  สร้างปุ่ม เพื่อให้คลิกและเรียกใช้งานหน้าจอ Attachment และเขียนโค้ดที่ปุ่มที่ on click event         Me.Attachmnt.SetFocus ' Set focus ฟิลด์ Atttachment         RunCommand acCmdManageAttachments ' เรียกใช้งาน เมื่อคลิกปุ่ม จะเกิดหน้าจอให้กำหนด Attachment ของฟิลด์ในตารางที่สร้าง การ Disable ไม่ให้สร้าง Record ใหม่ ในฟอร์ม        ปกติฟอร์มที่มีตาราง เป็น Record Source จะมี Navigation ด้านล่างให้สามารถไปยัง Record อื่น ๆ ได้ รวมทั้ง สร้าง ...

รอยย่นที่หู กับโรคหัวใจ

รูปภาพ
รอยย่นที่หู อาจจะเป็นสัญญานบอกว่า "คุณกำลังเป็นโรคระบบหัวใจและหลอดเลือด" วันนี้ฟัง หมอดาเลีย Pop quiz ถามว่า สัญญลักษณ์อะไรบนหูที่แสดงว่ากำลังเป็นโรคหัวใจ คำตอบก็คือ รอยย่นที่หู หรือ ear crease หาข้อมูลเพิ่มเติมก็พบว่า รอยย่นที่หู มีส่วนเกี่ยวข้องกับโรคหัวใจอยู่มากเหมือนกัน ถ้ามีรอยย่นที่หูดังที่เห็นในภาพ น่าจะต้องไปตรวจเช็คระบบหัวใจให้ละเอียด นายแพทย์ Scott Shurmur แพทย์ผู้เชี่ยวชาญด้านโรคหัวใจ ประจำที่ University of Nebraska Medical Center บอกว่า รอยย่นที่ว่า ต้องเป็นรอยย่นเส้นตรงเอียงประมาณ 45 องศา ตำแหน่งตามที่เห็นในรูป เท่านั้น ไม่ใช่รอยย่นทั่ว ๆ ไป แต่ก็ไม่ใช่หมายความว่า คนที่มีรอยย่นดังกล่าว ทุกคนจะเป็นโรคหัวใจกันหมด รอยย่อนอาจจะไม่มีผลต่ออะไรทั้งสิ้นก็ได้ แต่ก็อาจจะมีความเสี่ยงต่อโรคหัวใจได้ ประมาณร้อยละ 60 ซึ่งนายแพทย์ Scott Shurmur บอกว่า ก็ไม่ใช่อัตราที่ผิดปกติสำหรับคนทั่วไปเกี่ยวกับโรคหัวใจ มีการวิจัยเกี่ยวกับเรื่องรอยย่นกับโรคหัวใจหลายเรื่อง บางวิจัยก็สนับสนุน บางวิจัยก็บอกว่าไม่มีความสัมพันธ์กันแต่อย่างใด อาจจะเป็นไปได้ว่า พอคนอายุมากขึ้นก็จะเกิดรอยย...

การตรวจสอบ เลขบัตรประจำตัวประชาชน ด้วย Access VBA

รูปภาพ
การตรวจสอบ เลขบัตรประจำตัวประชาชน การตรวจสอบหมายเลขบัตรประจำตัวประชาชน ใช้ตัวเลขหลักที่ 13 เป็นตัวตรวจสอบ ตัวเลขหลักที่ 13 เกิดจากการนำเอาตัวเลข 12 ตัวแรก มาคำนวณ ตามวิธีการที่กำหนด แล้วจะได้ตัวเลขหลักที่ 13 ซึ่งมีวิธีการคำนวณ ดังนี้ ขั้นที่ 1 หาผลคูณของตัวเลขหลักที่ 1-12 กับ ตัวเลข ตั้งแต่ 12 ถึง 1 ดังนี้             ตัวเลขหลักที่ 1 X 12             ตัวเลขหลักที่ 2 X 11             ตัวเลขหลักที่ 3 X 10             ตัวเลขหลักที่ 4 X 9             ตัวเลขหลักที่ 5 X 8             ตัวเลขหลักที่ 6 X 7             ตัวเลขหลักที่ 7 X 6             ตัวเลขหลักที่ 8 X 5             ตัวเลขหลักที่ 9 X 4             ตัวเลขหลักที่ 10 X 3             ตัวเลขหล...

การใช้งาน File Dialog ใน MS Access 2010

รูปภาพ
MS Access 2010 สามารถสร้างลิงค์ในฟิลด์ เพื่อเรียกเปิดไฟล์ต่าง ๆ จากในเครื่องคอมพิวเตอร์ได้ การสร้างลิงค์ ถ้าจะให้สะดวก ต้องใช้ File Dialog เพื่อค้นหาไฟล์ และนำที่อยู่ของไฟล์มาใส่ไว้ใน Text box เพื่อนำไปเป็นลิงค์อีกทีหนึ่ง ดังภาพ การเรียกใช้ File Dialog ต่อไปนี้ ไม่ต้องมีการอ้างอิง Reference เรียกใช้งาน Library แต่อย่างใด ซึ่งช่วยตัดปัญหาที่อาจจะเกิดขึ้นได้หลายอย่าง วิธีเรียกใช้งาน File Dialog สร้าง Text box ใช้ชื่อที่โปรแกรมตั้งให้ คือ Text1 สร้างปุ่ม Command button ใช้ชื่อที่ โปรแกรมตั้งให้ คือ Command1 ตั้งชื่อ Label ว่า Browse ที่ On click ของ Command1พิมพ์โค้ด ดังนี้ Private Sub Command1_Click() Dim f As Object Set f = Application.FileDialog(3)  f.AllowMultiSelect = False If f.Show Then       Me.Text1 = f.SelectedItems(1) End If Set f = Nothing End Sub เมื่อใช้ Form View จะเห็น ดังนี้ เมื่อคลิกปุ่ม Browse จะมี File Dialog ให้สามารถเลือกไฟล์ได้ ถ้าต้องการ กรองเฉพาะไฟล์ที่ต้องการ เช่น เฉพาะไฟล์ doc, docx, xls, xlsx, ไฟล์ทุกประเภท ให...

การแสดง/ซ่อน Disable/Enable ปุ่ม บน ริบบิ้น ของ Access 2010

รูปภาพ
ความรู้พื้นฐานก่อนศึกษาเรื่องนี้ การสร้างริบบิ้น การสร้างปุ่มบนริบบิ้นโดยใช้ภาพที่สร้างเอง การ Disable ปุ่มบนริบบิ้น การแสดง/ซ่อน หรือกำหนดสถานะเป็น ไม่ทำงาน/ทำงาน (Disable/Enable) ปุ่ม บน ริบบิ้น ของ Access 2010 ต้องดำเนินการผ่าน Callback โดยกำหนดให้เรียกใช้ ใน USysRibbons เช่น ถ้าต้องการให้ปุ่ม btnNewAcc มีสถานะทำงาน หรือไม่ทำงาน ก็ต้องเพิ่ม getEnabled = "ชื่อไฟล์คำสั่ง" เช่น <button id="btnTransaction" label="ฝาก-ถอน"  onAction="myButtonCallback"  getEnabled="CallbackGetEnabled" /> จากนั้นจึงไปเขียนคำสั่ง ใน CallbackGetEnabled อีกครั้งหนึ่ง เช่น Sub CallbackGetEnabled(control As IRibbonControl, ByRef enabled)     enabled = bolEnabled End Sub ในตัวอย่างข้างบน มีการกำหนดตัวแปร bolEnabled ให้เป็น global variable แล้วจากนั้น จึงไปกำหนดค่า ให้เป็น True หรือ False เมื่อต้องการ ในไฟล์ตัวอย่างที่แนบให้ดาวน์โหลดข้างล่างนี้ มีการกำหนดค่า เมื่อมีการคลิกปุ่มเลือกให้แสดงสถานะ การวาดริบบิ้นใหม่ (Redraw) ใช้คำสั่ง invalidate เ...

ตัวหนังสือ รอยเย็บแนวขอบ ด้วย Illustrator CS6

รูปภาพ
ต้องการสร้างตัวหนังสือ รอยเย็บแนวขอบ ตามตัวอย่างข้างล่างนี้ หลักการ ใช้ Appearance Panel สร้างเส้นขอบ (Stroke) และกำหนดรูปแบบเป็นเส้นประ หรือ Dashed Line ปัญหาคือ ใน Illustrator CS6  ไม่สามารถสร้างเส้นขอบ หรือ Stroke ให้กับตัวหนังสือได้ หรือจะจัดตำแหน่งของเส้น Stroke ก็ไม่สามารถทำได้ วิธีการ เปิดไฟล์ใหม่ และใช้ Type Tool เขียนข้อความ โดยเลือกตัวหนังสือตัวหนา ๆ ในตัวอย่างนี้ เลือกตัวหนังสือ TP Kubua ขนาด 150pt เปิด Appearance Panel โดยไปที่ Window > Appearance ตรงนี้ เราไม่สามารถสร้าง Stroke เพิ่มให้กับตัวหนังสือได้ ต้องเปลี่ยนเครื่องมือ ไปคลิกที่ลูกศรสีดำ (Selection Tool) เพื่อเปลี่ยนจากตัวหนังสือ เป็น Object ที่ Appearance Panel คลิกที่มุมขวาด้านบน คลี่ลงมา และเลือก Add New Stroke คลิกเปลี่ยนสีของ Stroke เป็นสีน้ำเงินเข้ม และปรับขนาดของ Stroke เป็น 2px ซึ่งจะทำให้เมื่อลากไปไว้ข้างหลัง Fill จะได้เส้นขนาด 1px เนื่องจากไม่สามารถปรับ Stroke ให้อยู่ชิดด้านนอกได้  คลิกที่ข้อความ Stroke  และเลือกลักษณะเส้น เป็น Dashed Line กำหนด dash = 4 p...

การเปลี่ยนรูปแบบชุดข้อมูล จากแนวตั้ง เป็นแนวนอน

รูปภาพ
สมมติว่า มีข้อมูลที่อยู่ เรียงลำดับลงมาเป็นคอลัมน์ ตามแนวตั้ง และต้องการเปลี่ยนให้เรียงเป็นแถว 1 แถว คือ 1 ที่อยู่ ตามภาพข้างล่าง จะทำอย่างไร วิธีที่ง่ายที่สุด คือ Copy และ Paste ทีละ Cell แต่ถ้ามีเยอะ ๆ ก็ไม่ไหวเหมือนกัน วิธีที่ดีที่สุด คือการใช้สูตรช่วย ทำให้ง่ายและเร็วขึ้น สูตรที่จะใช้คือ index() เพื่อคัดลอกข้อมูลใน Cell ไปยังที่ใหม่  สูตรการใช้ index() คือ index(array, row_num, [column_num]) array ในที่นี้ ก็คือ คอลัมน์ A ทั้งหมด เพราะข้อมูลอยู่ในคอลัมน์ A  row_num ในกรณีนี้ ต้องใช้อ้างอิงจากตำแหน่งแถวแรกของข้อมูลแต่ละชุด - ข้อมูลชุดชุดที่ 1 คือ เลขที่ 99 หมู่ที่ 8 เริ่มที่คอลัมน์ 2 - ข้อมูลชุดชุดที่ 2  คือ เลขที่ 9 หมู่ที่ 6 เริ่มที่คอลัมน์ 7 - ข้อมูลชุดชุดที่ 3   คือ เลขที่ 30 หมู่ที่ 8 เริ่มที่คอลัมน์ 12 column_num ในกรณีนี้ เราไม่ต้องใช้ ดังนั้นถ้าจะใช้สูตรคัดลอกจากแนวตั้ง เป็นแนวนอน จะได้ดังนี้ D2 =index(A:A,2) E2 =index(A:A,3) F2 =index(A:A,4) G2 =index(A:A,5) เพื่อให้สามารถลากสูตร โดยใช้ Auto Fill...

เดินวันละชั่วโมงป้องกันโรคข้อเข่าเสื่อมได้

รูปภาพ
ฟัง หมอดาเลีย พูดว่า เดินวันละ 6,000 ก้าว ช่วยลดอัตราเสี่ยงต่อการเป็นโรคข้อเข่าเสื่อมได้ รู้สึกสนใจ เลยหาข้อมูลต่อ คนอายุมากที่มีปัญหาเรื่องข้อเข่า มักจะเดินลำบาก ขึ้นบันไดยากมาก หรือแม้แต่ลุกขึ้นจากเก้าอี้ก็ลำบาก แต่ผลการวิจัยต่อไปนี้แสดงให้เห็นว่า การเดินจะช่วยให้ทำสิ่งต่าง ๆ ข้างต้นได้ดีขึ้น เดินสบาย ขึ้นบันไดสบาย ลุกนั่งจากเก้าอี้คล่องแคล่วไม่มีปัญหา Professor Daniel White มหาวิทยาลัย Boston University ได้ศึกษาวิจัยเรื่องนี้กับกลุ่มตัวอย่างเกือบ 1,800 คน และสรุปว่า ตัวเลข 6,000 ก้าว ใช้เป็นเกณฑ์ได้ ใครก็ตาม ถ้าสามารถเดินได้วันละ 6,000 ก้าว ก็ถือว่าปลอดภัย ผู้ที่มีความเสี่ยงที่จะเป็นโรคข้อเข่าเสื่อม ควรจะเดินให้ได้วันละ 6,000 ก้าว ยิ่งเดินมาก ความเสี่ยงยิ่งลดลง โดยปกติ คนเดิน 100 ก้าว ใช้เวลาประมาณ 1 นาที เพราะฉะนั้น 6,000 ก้าว ก็จะใช้เวลาประมาณ 1 ชั่วโมง อย่างไรก็ตาม ไม่จำเป็นต้องเดินติดต่อกันทั้งชั่วโมง เดินตอนไหนก็ได้ทั้งวัน ให้ได้ 6,000 ก้าวก็พอ และถ้าจะให้ดี ก็ต้องมีเครื่องมือวัดจำนวนก้าวที่เดินด้วย เครื่องมือที่ว่า เรียกว่า Pedometer ไอ้เจ้า Pedometer นี่ เดี๋ย...

Windows 7 ใช้เวลา Boot นานมาก

รูปภาพ
โดยปกติ เมื่อ Windows  ใช้เวลา Boot นานมาก เรามักจะเรียกโปรแกรม msconfig เพื่อจัดการกับโปรแกรมที่ load เข้ามาตอน Startup เพื่อให้โหลดเร็วขึ้น แต่หลายครั้งที่ไม่ค่อยประสบผลสำเร็จ โปรแกรม Windows 7 รุ่น Ultimate, Professional และรุ่น Enterprise มีเครื่องมือสำหรับวิเคราะห์และแก้ไขปัญหาการ Boot เครื่องมือนี้เรียกว่า Windows Boot Performance Diagnostics วิธีการใช้งาน เรียกใช้งานโปรแกรม gpedit.msc โดยคลิกที่ไอคอนรูป Windows และพิมพ์ gpedit.msc  คลิกเลือก Show/Hide Console Tree (ปกติเมื่อเปิด จะคลิกเปิดอยู่แล้ว) เลือก Computer Configuration > Administrative Templates > System ดับเบิ้ลคลิก Troubleshooting and Diagnostics ดับเบิ้ลคลิก Windows Boot Performance Diagnostics เพื่อเปิดหน้าต่างใช้งาน เลือก Configure Secnario Excution Level คลิก Policy setting เปิดใช้งาน โดยคลิก Enable และเลือก Detection, Troubleshooting and Resolution เป็นอันเสร็จสิ้นการให้ Windows วิเคราะห์และแก้ไขการ Boot ช้า ของ Windows 7 ที่มา http://www.gui...