Code สั่ง Print ผ่านวงแลน

Code สั่ง Print ผ่านวงแลน

ปัญหาใช้ Macro สั่ง Print ผ่านวงแลน เมื่อนำไฟล์งานไป print เครื่องอื่น กลับ print ไม่ได้ เนื่องจาก Printer ที่กำหนดค่าไว้ Macro เป็นอีก Port แต่เครื่องที่นำไฟล์ไปใช้เป็นอีก Port ซึ่ง Port ของ Printer ไม่ตรงกัน ตัวอย่างเครื่อง Print ที่กำหนดไว้ใน Macro เครื่องแรก >>\\172.30.53.61\OKI MICROLINE 791 More »

การลบ Style จำนวนมากในคราวเดียวด้วย VBA

การลบ Style จำนวนมากในคราวเดียวด้วย VBA

กรณีทีใช้ Excel 2007+ แล้ว Save กลับมาเป็น Excel 2003- บางครั้งจะพบปัญหาว่ามี Format มากเกินกว่าข้อจำกัดของ Excel 2003- ทำให้เปิดไฟล์ไม่ได้ โปรแกรมจะฟ้องว่า Too many difference formats เนื่องจาก Excel 2003- นั้นมี Style ได้แค่ 4,000 แบบเท่านั้น More »

การเปลี่ยนชื่อไฟล์จำนวนมากด้วย VBA

การเปลี่ยนชื่อไฟล์จำนวนมากด้วย VBA

กรณีทีเราต้องการเปลี่ยนชื่อไฟล์จำนวนมากและมีอยู่หลาย ๆ โฟลเดอร์คงจะเสียเวลาไม่น้อยหากต้องคีย์เปลี่ยนเอง การเปลี่ยนชื่อไฟล์ในลักษณะดังกล่าวสามารถใช้ VBA เข้ามาช่วยได้ครับ ตามตัวอย่างในภาพด้านล่าง คอลัมน์ A คือ Path ที่ต้องการเปลี่ยนชื่อไฟล์ More »

การเพิ่ม Sheet อัตโนมัติตามรายชื่อที่ให้ไว้ล่วงหน้าด้วย VBA

การเพิ่ม Sheet อัตโนมัติตามรายชื่อที่ให้ไว้ล่วงหน้าด้วย VBA

ในบางงานเราอาจจำเป็นต้องเพิ่มชีทหลาย ๆ ชีท และต้องการให้ชื่อชีทเป็นชื่อที่เรากำหนดไว้แล้วล่วงหน้า การทำเช่นนี้หากทำด้วย Manual จะใช้เวลามาก แต่หากใช้ VBA มาช่วยจะลดเวลาได้มากมายครับ ซึ่งจะขอยกตัวอย่างการใช้ VBA ในการเพิ่มชีทตามด้านล่าง แต่ต้องเตรียมข้อมูล More »

การตรวจสอบหมายเลข IP ว่าอยู่ใน Range ใดหรือไม่

การตรวจสอบหมายเลข IP ว่าอยู่ใน Range ใดหรือไม่

สำหรับหมายเลข IP ซึ่งต้องมองทีละชุดไปนั้นไม่สามารถใช้การตรวจสอบได้เหมือนเลขธรรมดา ต้องตรวจสอบหมายเลขเป็นชุด ๆ ไป การตรวจสอบด้วยสูตรจึงทำได้ลำบากแต่สามารถใช้ VBA เข้ามาช่วยได้ครับ สำหรับตัวอย่าง Code ตามด้านล่างจะเป็นการนำ I3:I17 ไปตรวจสอบกับ C3:D7 More »

 

การกำหนดให้อ้างอิงตำแหน่งเดิมแม้มีการย้ายเซลล์ต้นทาง แทรกคอลัมน์หรือแทรกบรรทัด

ปกติหากมีการ Link เอาค่าในเซลล์ใด ๆ มาใช้ เมื่อเราทำการย้ายเซลล์ต้นทาง สูตรของเราที่เซลล์ปลายทางจะทำการเปลี่ยนแปลงให้อัตโนมัติ ยกตัวอย่างเช่นที่ B1 คีย์สูตร =A1 หากเราย้าย A1 ซึ่งเป็นเซลล์ต้นทางไปยังเซลล์ E1 (การย้ายสามารถใช้การตัดเซลล์โดยเลือกเซลล์ต้นทางแล้วกดแป้น Ctrl+X จากนั้นคลิกไปยังเซลล์ปลายทางแล้วกดแป้น Ctrl+V เพื่อวาง) สูตรที่ B1 จะเปลี่ยนไปจากเดิมกลายเป็นด้านล่าง =E1

การใช้ Vlookup

ฟังก์ชั่น Vlookup เป็นฟังก์ชั่นหนึ่งที่ใช้บ่อยมาก แต่ผู้ที่ใช้ส่วนมากก็ยังไม่เข้าใจว่าทำงานอย่างไร อ่านใน Help แล้วก็ยังไม่เคลียร์ เมื่อเกิดปัญหาก็เลยไม่สามารถแก้ไขได้ มาดูส่วนประกอบหรือไวยากรณ์ของ Vlookup กันก่อนครับ Vlookup มีไวยากรณ์ดังนี้ Vlookup(lookup_value,table_array,col_index_num,[range_lookup])

การหาค่าสุดท้ายที่ไม่เป็นค่าว่างที่ได้จากสูตร

กรณีค่าหาค่าสุดท้าย สามารถดูได้ที่ http://snasui.blogspot.com/2008/11/blog-post_09.html ซึ่งมีทั้งหาค่าสุดท้ายที่เป็นตัวเลข, เป็นอักขระ

การวางข้อมูลโดยไม่ให้ช่องว่างไปทับเซลล์ที่มีข้อมูล

การ Copy แล้ววางข้อมูลมีหลาย Option ให้เลือกไม่ว่าจะวางแบบค่า วางเฉพาะรูปแบบ หรือวางแบบภาพ ฯลฯ ซึ่งช่วยให้ทำงานง่ายขึ้นมาก การวางอีกรูปแบบหนึ่งที่น่าสนใจคือ การวางแบบไม่นำเซลล์ว่างไปทับเซลล์ที่มีข้อมูล นั่นหมายความว่า เราทำการ Copy ข้อมูลจากที่ใดที่หนึ่ง

ความเก่งกาจของฟังก์ชั่น Offset

ถ้าเราไปยืนที่ใดที่หนึ่งแล้วสามารถจะหันได้รอบทิศ ย่อมเป็นที่พอใจและน่ายินดีมากกว่าจะหันไปได้แค่ ซ้าย ขวาและมองไปข้างหน้าใช่ไหมครับ การที่จะหันไปได้รอบทิศของเรา ถ้าเปรียบกับฟังก์ชั่น เห็นจะมีฟังก็ชั่นเดียวคือ Offset เพราะสามารถหาข้อมูลได้ทุกทิศรอบตัวเอง นี่คือความสามารถอันสุดยอด

เพราะเหตุใดนำ 5.5 หักด้วย 5.4 แล้วไม่ได้เท่ากับ 0.1

อาจจะยังไม่มีใครสงสัยในกรณีนี้เพราะไม่ได้สังเกต ที่จริงแล้วมีตัวเลขมากมายจนไม่สามารถระบุได้หมดครับที่นำมาหักลบกลบกันแล้วไม่เท่ากับที่ควรเป็น เช่น 10.9-10.8 แล้วไม่เท่ากับ 0.1 5.5-5.4 แล้วไม่เท่ากับ 0.1 4.3-4.2 แล้วไม่เท่ากับ 0.1 ฯลฯ ทดสอบได้อย่างไรว่าไม่เท่ากัน

การใช้ฟังก์ชั่น And และ Or

เมื่อกล่าวถึงฟังก์ชั่น And และ ฟังก์ชั่น Or หลายคนอาจจะยังไม่ค่อยคุ้นสักเท่าไร และสงสัยว่าใช้ทำอะไรได้บ้าง ใช้เมื่อใด ซึ่งที่จริงแล้วฟังก์ชั่น And และฟังก์ชั่น Or มีประโยชน์มากมายสำหรับการหาค่าใด ๆ โดยมีเงื่อนไขหลายเงื่อนไข โดยเฉพาะใช้ร่วมกับฟังก์ชั่น If ฟังก์ชั่น And อยู่ในประเภทฟังก์ชั่น ตรรกะ

สูตรที่แสดงค่าผิดพลาดเมื่อปิดไฟล์

กรณีที่เราทำงานกับไฟล์ซึ่งมีการเชื่อมโยงกับไฟล์อื่น หากปิดไฟล์ต้นแหล่งไปแล้ว ทำไมสูตรที่เราเขียนไว้เกิดค่าผิดพลาดขึ้น เช่นติด #Ref! หรือ #Value! ที่เป็นเช่นนี้เนื่องจากว่าเป็นข้อจำกัดของ Excel ในบางฟังก์ชั่นที่ไม่สามารถใช้กับไฟล์ที่ปิดไปแล้วได้ครับ ฟังก์ชั่นดังกล่าวได้แก่ Sumif Sumifs

การตัดข้อความออกเป็นหลายบรรทัด

Excel มีความสามารถประการสำคัญที่มักไม่ค่อยได้ใช้งาน อาจจะเป็นเพราะไม่รู้ว่า Excel สามารถทำได้ คือ การตัดข้อมูลที่กรอกมาในเซลล์เดียวหลาย ๆ อักขระ ออกเป็นหลายบรรทัด ซึ่งข้อมูลที่มีกรอกมาในเซลล์เดียวหลายอักขระนั้น ปกติแล้วจะเป็นการ Copy มาจากแหล่งอื่นเช่นจาก Webboard เป็นต้น

การกรองให้เรียงลำดับโดยไม่คำนึงถึงเครื่องหมาย

สำหรับงานบัญชีที่ต้องมีการกระทบยอดเพื่อล้างบัญชีมักจะมีความยุ่งยากและเสียเวลาในการจับคู่ เนื่องจากจำนวนที่เป็นค่าบวกและค่าลบเมื่อกรองออกมาแล้วจะถูกจัดเรียงแยกต่างหากจากกัน การกรองโดยปกติสามารถกรองค่าน้อยไปหามาก หรือค่ามากไปหาน้อย หรือแม้จะสามารถกรองตามเงื่อนไขได้

เทคนิคการ Preview เฉพาะหน้าที่ต้องการ

กรณีที่มีงานจำนวนหลายหน้า และหากต้องการ Preview ดูก่อนที่จะ Print งาน โปรแกรม Excel จะเริ่ม Preview ให้ตั้งแต่หน้าแรกเสมอ ในบางโอกาสเราต้องการดูหน้าอื่น ๆ ที่ไม่ใช่หน้าแรก หากกดปุ่ม Preview ก็จะต้องกดปุ่ม Next ไปเรื่อย ๆ จนถึงหน้าที่ต้องการ ยกตัวอย่างเช่นต้องการดูเฉพาะหน้า 50 ก็จะต้องการกด Next

การใช้ Max, Min แทน If

ปกติเราใช้ฟังก์ชั่น If เมื่อทำงานกับข้อมูลตัวเลขที่ต้องการเลือกมาตามเงื่อนไขอย่างน้อยสองเงื่อนไข ยกตัวอย่างเช่น เงื่อนไขคือ ถ้า A1 มีค่าน้อยกว่า 0 ให้ B1 แสดงค่าเป็น 0 ถ้า A1 ไม่น้อยกว่า 0 ให้ B1 แสดงค่าใน A1 ปกติเราสามารถเขียนสูตร If ที่ B1 ได้ดังนี้ =If(A1<0,0,a1) กรณีเช่นนี้เราสามารถใช้ฟังก์ชั่น Max