บทความ

กำลังแสดงโพสต์ที่มีป้ายกำกับ MS Excel

การทดสอบ t-test แบบ Dependent ด้วย Excel 2010 และ การแปรผล

รูปภาพ
การทดสอบ t-test แบบ Dependent  การทดสอบ t-test แบบ Dependent เป็นการทดสอบข้อมูลของกลุ่มตัวอย่างกลุ่มเดียวกัน เช่น เปรียบเทียบผลการทดสอบก่อนเรียนและผลการสอบหลังเรียนของผู้เรียนกลุ่มเดียวกัน ว่าแตกต่างกันอย่างมีนัยสำคัญทางสถิติหรือไม่ เป็นต้น บางทีก็เรียกว่า เป็นการทดสอบ t-test แบบจับคู่ หรือ Paired t-test ตัวอย่างการวิเคราะห์ค่า t-test ด้วย Excel โปรแกรม Microsoft Excel นอกจากมีสูตรที่เป็น Worksheet functions แล้ว ยังมีเครื่องมือ Add-Ins สำหรับการทดสอบทางสถิติ ซึ่งเรียกว่า Analysis ToolPak ที่ใช้สำหรับการวิเคราะห์ค่าทางสถิติโดยเฉพาะอีกด้วย เครื่องมือนี้ มีมาให้พร้อมใช้งาน แต่ยังไม่ได้ติดตั้ง ต้องติดตั้งก่อน จึงจะใช้งานได้ สำหรับ Excel 2010 มีวิธีการติดตั้ง ดังนี้ ไปที่เมนูบนแถบริบบิ้น แฟ้ม > ตัวเลือก > Add In เลือก จัดการตัวเลือกของ Add In และคลิก ไป จะเกิดหน้าจอ คลิกเลือก Analysis ToolPak ตรวจสอบที่เมนูบนริบบิ้น ที่เมน ข้อมูล จะเห็นมี Data Analysis เกิดขึ้น การวิเคราะห์ค่า T-test ด้วย Excel ก่อนจะทำการทดสอบ ต้องมีการตั้งสมมุติฐานก่อน ตั้งสมมุติฐานแบ

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

รูปภาพ
สมมติว่า มีข้อมูลที่อยู่ เรียงลำดับลงมาเป็นคอลัมน์ ตามแนวตั้ง และต้องการเปลี่ยนให้เรียงเป็นแถว 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 ได้ จึงต้องกำหนดค่าตัวเ

การจัดลำดับแบบไม่ซ้ำกัน โดยมีเงื่อนไข ใน Excel 2010 ด้วย rank.eq() และ sumproduct()

รูปภาพ
โจทย์ปัญหา ถ้าต้องการจัดลำดับ โดยกำหนดเกณฑ์ว่า ถ้าได้คะแนนรวมเท่ากัน ให้พิจารณาผลคะแนนอื่นประกอบ เช่น ในการสอบคัดเลือก ถ้าคะแนนรวมได้เท่ากัน ให้พิจารณาคะแนนในการสอบ ภาค ก. ถ้าใครได้คะแนนสอบภาค ก. มากกว่า จะได้ลำดับที่ดีกว่า สังเกตการจัดลำดับผู้สอบคัดเลือกได้ ในตารางข้างล่างนี้ จากตัวอย่าง จะเห็นว่า ผู้เข้าสอบมีคะแนนรวม ที่เท่ากัน หลายคน เช่น เลขที่ 1, 6 และ 7 ได้คะแนน 100 คะแนน เท่ากัน แต่จัดลำดับที่ต่างกัน โดยพิจารณาจากคะแนนใน ภาค ก. ประกอบ ได้แก่ เลขที่ 7 ได้คะแนนรวม 100 คะแนน และได้คะแนนภาค ก. 40 คะแนน ได้ลำดับที่ 4 เลขที่ 6 ได้คะแนนรวม 100 คะแนน และได้คะแนนภาค ก. 30 คะแนน ได้ลำดับที่ 5 เลขที่ 1 ได้คะแนนรวม 100 คะแนน และได้คะแนนภาค ก. 20 คะแนน ได้ลำดับที่ 6 การเรียงลำดับลักษณะนี้ ใช้ฟังก์ชั่น Rank() อย่างเดียวไม่พอ ต้องใช้ Sumproduct() เพื่อกำหนดเงื่อนไขเพิ่มเติม วิธีการ มีดังนี ใช้ RANK.EQ() เพื่อหาลำดับที่ตามปกติ จะได้ดังนี้ จะเห็นว่า มีลำดับที่ซ้ำกัน คือ ลำดับที่ 2 มี 2 คน และ ลำดับที่ 4 มี 3 คน เกณฑ์ต่อมา คือต้องพิจารณาว่า ตำแหน่งที่เท่ากัน หรือซ้ำกัน ใครได้

การแสดงข้อความบนแถบสถานะ (Statusbar) ของ Excel

รูปภาพ
การแสดงข้อความบนแถบสถานะ หรือ Statusbar ของ Excel มีขั้นตอน ดังนี้ กำหนดให้แสดงแถบสถานะ ด้วยคำสั่ง Application.DisplayStatusBar = True เพิ่มข้อความลงบนแถบสถานะ ด้วยคำสั่ง Application.StatusBar = "ข้อความที่ต้องการให้แสดง" เช่น           Application.StatusBar = "กำลังคำนวณค่าร้อยละ ..." เมื่อการคำนวณสิ้นสุดลง และต้องการให้ Statusbar แสดงค่าตามปกติ ให้คืนค่า ด้วยคำสัง     Application.StatusBar = False ถ้าไม่คืนค่า Statusbar จะแสดงข้อความ ตามที่สั่ง  ไม่ควรสั่งให้  Application.DisplayStatusBar = False เพราะจะทำให้ Excel ไม่แสดงข้อความ เมื่อมีการคำนวณใหม่อีกครั้ง เช่น ตัวอย่าง Code Application.DisplayStatusBar = True Application.StatusBar = "กำลังคำนวณค่าร้อยละ ..." findPercent Application.StatusBar = "กำลังคำนวณค่ามัฌิมเลขคณิต (Mean) ..."    meanCalculation Application.StatusBar = False ' Application.DisplayStatusBar = False

การตัดช่องว่าง ด้วยสูตร Excel

รูปภาพ
วันนี้เกิดอาการงงนิด ๆ ใช้สูตรรวมเซลล์ ใน Excel แล้วเกิดช่องว่าง ดังภาพ   จากภาพ จะเห็นว่า เซลล์ D2 มีการใช้สูตรรวมชื่อ โดยรวม คำนำหน้าชื่อ ชื่อ ช่องว่างและ นามสกุลเข้าด้วยกัน แต่ผลปรากฏว่า มีช่องว่างระหว่างคำนำหน้าชื่อ และชื่อ แต่บางเซลล์ ก็ไม่มีปัญหา เช่น เซลล์ D3 D6 และ D7 เป็นต้น สาเหตุ ในการพิมพ์ คำนำหน้าชื่อ เมื่อพิมพ์เสร็จ มีการเคาะ space bar ทำให้เกิดช่องว่างต่อท้ายคำนำหน้าชื่อ ถ้านำเคอร์ไปวางที่ข้างหลัง จะเห็นว่า เคอร์เซอร์ไม่ติดกับท้ายคำ แต่มีช่องว่าอยู่ การแก้ไข ใช้สูตร trim() ของ Excel ตัดช่องว่างออก และเพื่อให้แน่ใจว่า ไม่มีปัญหา ควรตัดช่องว่างออกให้หมด ทั้งคำนำหน้าชื่อ ชื่อ และนามสกุล ดังคือ  =trim(A2)&trim(B2)&"  "&trim(C2) เท่านี้ ปัญหาเรื่องช่องว่างก็จะหมดไป

การคัดลอกข้อมูลตาราง จาก PDF มายัง Excel 2010

รูปภาพ
บางครั้งเราต้องการคัดลอกข้อมูลตาราง จากไฟล์ PDF มายัง Excel เพื่อมาจัดการ คำนวณ หรือทำอะไรสักอย่าง ถ้าจะพิมพ์เข้ามาโอกาสผิดพลาดมีมากเหมือนกัน โดยเฉพาะยิ่งมีข้อมูลเยอะ ๆ โอกาสผิดพลาดมีได้ง่าย ข้อจำกัด ไฟล์ PDF สามารถกำหนดเงื่อนไขให้ผู้ใช้คัดลอก หรือจะห้ามก็ได้ ถ้าผู้สร้างไม่อนุญาตให้คัดลอก ก็จะไม่สามารถทำได้ ในกรณีที่เจ้าของไฟล์ PDF อนุญาตให้คัดลอกได้ จึงจะสามารถคัดลอกมายัง Excel ได้ หลักการ คัดลอกข้อมูลตารางจากไฟล์ PDF แล้วมาวางใน Excel โดยใช้ ตัวช่วยสร้างการนำเข้าข้อความ หรือ Text Import Wizard มิฉะนั้นข้อมูลจะไปรวมกันใน Cell เดียวกัน วิธีการ เลือกข้อมูลที่ต้องการคัดลอกจาก PDF คลิกขวา แล้วเลือก Copy เพื่อคัดลอกสิ่งที่เลือก ไปที่โปรแกรม Excel คลิกเซลล์แรกที่ต้องการวางข้อมูล ไปที่ลูกศรสามเหลี่ยมใต้ข้อความ วาง จะเปิดเมนูตัวเลือกเพิ่มเติม ให้คลิกที่ ใช้ตัวช่วยสร้างการนำเข้าข้อความ จะเปิดหน้าจอตัวช่วย เนื่องจาก ข้อมูลจาก PDF จะคั่นด้วยช่องว่าง จึงไม่ต้องปรับอะไร คลิกปุ่ม เสร็จสิ้นได้ทันที ถ้าโปรแกรมจะถามว่าจะแทนที่ข้อมูลเดิมหรือไม่ น่าจะตอบว่าให้แทนนะครับ ถ้าไม่แ

ส่งเมลด้วย VBA ใน Excel ผ่าน Outlook

รูปภาพ
สมมุติว่า ใน Sheet ชื่อ users มีอีเมล์ ตั้งแต่เซลล์ B6:B20 และต้องการส่งเมล ไปยังอีเมลเหล่านั้น โดยใช้ Outlook จะทำอย่างไร หลักการ ก่อนอื่น ต้องทำการ Config โปรแกรม Outlook ให้สามารถใช้งานได้ก่อน โดยกำหนดว่าจะใช้ Serve ใดเป็นตัวส่งเมล์ จากนั้นจึง เปิด Excel ทำการอ้างอิงไปที่ Microsoft Outlook Object Library แล้วเขียนโค้ดส่งเมล์ และแนบกับปุ่ม เมื่อคลิกปุ่ม จะทำการส่งเมลทั้งหมดที่อยู่ในเซลล์ B6:B20 วิธีการ เปิด Excel 2010 และเรียกเมนู ผู้พัฒนา โดยไปที่ แฟ้ม > ตัวเลือก > กำหนด Ribbon เอง และเลือก ผู้พัฒนา อ้างอิง Outlook Object Library ให้เปิดหน้าจอเขียนโค้ด (กด Alt+F11) (หรือ นักพัฒนา > แสดงโค้ด ) แล้วไปที่ Tools > References และเลือก Library ที่ต้องการ สร้างโมดุลใหม่ โดยไปที่ เมนู Insert > Module ดับเบิ้ลคลิกที่ Module1 และสร้าง Procedure การเรียกใช้งาน Outlook ดังนี้ Sub sendMyMail(addrss As String)     Dim OutApp As Object     Dim OutMail As Object     Set OutApp = CreateObject("Outlook.Application")     Set OutMail = OutApp.CreateItem(0)

การหาค่า Mean และ S.D. ในบริเวณที่เลือก ด้วย Excel VBA

รูปภาพ
การหาค่า Mean และ S.D. ด้วย VBA คำสั่ง ให้หาค่า Mean และ S.D. ของข้อมูลในบริเวณที่เลือก ในแผ่นงานข้างล่างนี้ หลักการ ใช้ Range เพื่อเลือกบริเวณที่ต้องการ ใช้คำสั่ง average และ stdev เพื่อคำนวณค่าที่้ต้องการ

การสร้าง Drop down list และกำหนดเงื่อนไข ใน Excel 2010

รูปภาพ
เมื่อมีการใช้ Drop-down list ใน Excel เพื่อให้เลือกตัวเลือก เมื่อผู้ใช้เลือกแล้ว ให้จัดการบางอย่าง เช่น แสดงหรือซ่อนเซลล์ ดังตัวอย่างข้างล่างนี้ ในตัวอย่างข้างบน มีการสร้าง Drop-down list ที่เซลล์ G32 เพื่อให้ผู้ใช้เลือกว่า มีการแบ่งข้อคำถามของแบบสอบถามออกเป็นด้าน ๆ หรือไม่ เมื่อผู้ใช้เลือกว่า มีการแบ่งด้านออกเป็นด้าน ๆ ให้แสดงช่วงบรรทัดที่ 33-40 เพื่อให้กรอกข้อมูล แต่ถ้าผู้ใช้ระบุว่า ไม่มีการแบ่งช่วง ให้ซ่อนเซลล์ บรรทัดที่ 33-40 หลักการ สร้าง Drop-down list โดยใช้ Data Validation จากนั้นเขียน VBA ของ Sheet ที่ใช้งาน ให้ตรวจสอบการเปลี่ยนแปลงในเซลล์ที่มี Drop-down list จากนั้นจึงกำหนดเงื่อนไขที่ต้องการ

การซ่อนสูตร ของ Excel

รูปภาพ
หลักการ การซ่อนสูตร ใน Excel ทำได้ โดยกำหนดที่ รูปแบบของเซลล์ที่มีสูตร ให้การป้องกันเป็นแบบ ล็อค และ ซ่อน จากนั้น ให้ทำการป้องกันแผ่นงาน แผ่นนั้นด้วย เมื่อคลิกที่เซลล์ที่มีสูตร จะไม่แสดงให้เห็นสูตร และไม่สามารถแก้ไขได้ ตัวอย่าง จากภาพ ต้องการซ่อนสูตรในเซลล์ C5 จะทำอย่างไร วิธีการ

การปรับทิศทางของ Autofill ใน Excel 2010 ด้วย สูตร Offset

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

การนำเข้าข้อมูล Access จาก Excel

รูปภาพ
เมื่อมีความจำเป็นต้องนำข้อมูลจาก Excel เข้าโปรแกรม Access สามารถทำได้โดยง่าย เพราะ Access มีเมนูการนำเข้าข้อมูลจากภายนอกอยู่แล้ว สามารถนำเข้าจากไฟล์ข้อความ (Text File) ไฟล์ XML และไฟล์ Excel เมื่อนำข้อมูลเข้า Access ข้อมูลจะไปอยู่ในตารางที่กำหนด โดยต่อท้ายจากข้อมูลที่มีอยู่เดิม หรือ ถ้าต้องการให้สร้างตารางใหม่ สำหรับข้อมูลที่นำเข้า ก็สามารถทำได้ หลักการนำเข้าข้อมูลจาก Excel เคล็ดลับที่สำคัญคือ ต้องกำหนดชื่อหัวคอลัมน์ ให้เป็นชื่อฟิลด์ในตารางที่นำเข้า ข้อมูลที่นำเข้าไม่จำเป็นต้องครบทุกฟิลด์ในตาราง แต่ที่สำคัญคือต้องดูชนิดของข้อมูลให้ตรงกันด้วย และตารางที่จะนำเข้าข้อมูลต้องไม่กำลังเปิดใช้งาน มิฉะนั้นเวลานำเข้าข้อมูล โปรแกรม Access จะเกิดหน้าจอถามว่าตารางกำลังเปิดอยู่จะให้ปิดหรือไม่ ถ้าไม่ปิดก็จะไม่สามารถนำเข้ามูลไปต่อท้ายได้ ตัวอย่างการนำเข้าข้อมูลจาก Excel ในตัวอย่างนี้ ฐานข้อมูล Access ประกอบด้วย 2 ตาราง คือ Table1 และ Table2 ตาราง Table1 มีฟิลด์ 3 ฟิลด์ คือ ID ชนิดข้อมูลเป็น AutoNumber ฟิลด์ ชื่อ ข้อมูลเป็นชนิด Text และ ฟิลด์ จังหวัด ข้อมูลเป็น ชนิด Text ต้องการนำเข้าข้อมูลจ