สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
Escape the sheet เป็นเกม Excel เล็กๆ ที่ฉันรวบรวมไว้เมื่อหลายปีก่อนเพื่อสอนกลุ่มเพื่อนร่วมงานเกี่ยวกับทักษะ Excel ขั้นสูง ในขณะที่สนุกสนานไปกับปริศนา Trivia และ Logic สองสิ่งที่ฉันชอบมาก!
เกมนี้เป็นการผสมผสานระหว่างสูตร excel การจัดรูปแบบตามเงื่อนไขสำหรับทั้งเซลล์ปัจจุบันและสำหรับค่าที่ยึดตามเซลล์อื่นและมาโคร VBA บางตัวเพื่อทำให้การเขียนโค้ดยากขึ้นเล็กน้อย
ขั้นตอนที่ 1: แนวคิดของเกม
คุณไม่จำเป็นต้องมีประสบการณ์การเขียนโปรแกรมขนาดใหญ่หรือซอฟต์แวร์ราคาแพงเพื่อเขียนเกม นี่คือสิ่งที่คุณสามารถทำได้ใน excel
เกมนี้มีขนาดเล็ก 2 parter ระดับแรกเป็นแบบทดสอบเรื่องไม่สำคัญ
มีคำถามธนาคาร 50 ข้อในระบบ แต่อาจมากกว่านี้หากคุณมีแนวโน้มมาก
หากต้องการลบความคลุมเครือที่เป็นไปได้ด้วยการสะกดคำหรือตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ให้ตรงกับคำถามทั้งหมดจะมีคำตอบที่เป็นตัวเลข
ระบบจะสุ่มนำเสนอคำถาม 5 ข้อนี้ให้กับผู้เล่น โดยผู้เล่นสามารถขอชุดคำถามใหม่ได้
เมื่อตอบคำถามครบ 5 ข้อแล้ว ระบบจะแจ้งผู้เล่นว่าไม่สำเร็จและให้ลองใหม่อีกครั้ง มิฉะนั้นจะเปิดห้องที่ 2
ห้องที่ 2 เป็นเกมไขปริศนาตรรกะที่ลำดับสีจะถูกสร้างขึ้นแบบสุ่มและผู้เล่นสามารถสร้างใหม่ได้ทุกเมื่อ แต่ละสีจะสัมพันธ์กับตัวเลข 1-10 ผู้เล่นต้องใช้การลองผิดลองถูก/หน่วยความจำเพื่อค้นหาตัวเลขที่ตรงกันและทำซ้ำลำดับ
ขั้นตอนที่ 2: การติดตั้ง
ตอนแรกฉันตั้งค่าสมุดงานด้วยแผ่นงานเปล่า 4 แผ่น
เริ่มต้นด้วยแผ่นที่ 3 ฉันสร้างตารางที่มีส่วนหัว "คำถาม" & "คำตอบ"
ในคอลัมน์ A และป้อนหมายเลขป้อนอัตโนมัติ 1-50 สิ่งสำคัญคือต้องกำหนดหมายเลขคำถามสำหรับกระบวนการคัดเลือก
จากนั้นฉันก็ท่องโลกออนไลน์และท่องจำ 50 คำถามพร้อมคำตอบที่เป็นตัวเลข
ตอนนี้เราต้องการวิธีนำเข้าคำถามเหล่านี้ไปยังหน้าจอ Room 1 ในแผ่นงาน 1
ทำได้โดยใช้ฟังก์ชัน VLOOKUP ซึ่งช่วยให้เราใช้ตัวเลขที่จุดเริ่มต้นของแถวคำถามได้ อย่างไรก็ตาม หากเราใช้ 1-5 จากแผ่นห้อง 1 เราจะได้รับเพียง 5 คำถามแรกและอยู่ในลำดับเดียวกัน นี่คือที่มาของชีต 2 มีสูตร 2 แถวที่นี่ ครั้งแรกใช้ฟังก์ชัน RANDBETWEEN ซึ่งช่วยให้ผู้ใช้สามารถป้อนช่วงระหว่างที่จะสร้างรายการสุ่ม ปัญหาคือว่าด้วยช่วงเล็ก ๆ เช่นนี้ มีความเป็นไปได้สูงที่จะมีการทำซ้ำและจะไม่ทำให้เป็นแบบทดสอบที่ยุ่งยากมาก ดังนั้น เพื่อเอาชนะสิ่งนี้ มีคอลัมน์ที่สองที่ก้าวไปอีกขั้นและลบรายการที่ซ้ำกันโดยใช้ทั้งฟังก์ชัน RANK. EQ และ COUNTIF สิ่งเหล่านี้จะจัดอันดับค่าเทียบกับส่วนที่เหลือของรายการและนับหากมีการทำซ้ำของค่าใน รายการทั้งหมด ค่าเหล่านี้จะถูกรวมเข้าด้วยกันและทำให้เกิดค่าแบบสุ่มและไม่ซ้ำกัน เราสามารถยืนยันได้โดยการคัดลอกรายการ จากนั้นวางค่าและเรียงลำดับจากน้อยไปมาก ซึ่งจะแสดงค่าที่ไม่ซ้ำกันทั้งหมด 1-50
กลับมาที่ห้อง 1 เราสามารถใช้ VLOOKUP เพื่อนำค่าที่ 1, 2, 3 และอื่นๆ จากรายการและค้นหาในแผ่นคำถามสำหรับทั้งคำถามและคำตอบ ทุกครั้งที่มีการสุ่มตัวเลขขึ้นมาใหม่ คำถามชุดใหม่จะปรากฏขึ้นบนหน้าจอห้อง 1
Excel ได้รับการกำหนดค่าให้คำนวณอัตโนมัติ ซึ่งทำให้เกิดปัญหากับฟังก์ชัน RANDBETWEEN เนื่องจากทุกครั้งที่โหลดหน้า การคำนวณจะทำงานและเรียงลำดับคำถามใหม่ สามารถตั้งค่าเป็น manual buy โดยไปที่ Formulas ใน Ribbon จากนั้น Calculation options และตั้งค่าเป็น manual เราจะดูแลการคำนวณในภายหลัง
ก่อนจบหน้านี้ เราซ่อนคอลัมน์ C (คำตอบจริง)
ขั้นตอนที่ 3: ตรวจคำตอบ
การตรวจสอบคำตอบนั้นง่ายมาก ค่าของคำตอบที่คาดหวังทั้งหมดจะถูกรวมไว้ในเซลล์ที่ด้านล่างของคอลัมน์ C ในห้องที่ 1 คำตอบของผู้เล่นจะถูกโหลดลงในคอลัมน์ D และรวมเข้าด้วยกัน
สคริปต์ VBA ถูกตั้งโปรแกรมเป็นปุ่มเพื่อเรียกใช้การคำนวณและตรวจสอบคำตอบ
หากต้องการเพิ่มปุ่ม ให้ไปที่ Developer ใน Ribbon ให้เพิ่มปุ่มโดยใช้ Insert -> Button
เมื่อคุณวาดปุ่มแล้ว จะมีตัวเลือกในการเพิ่มมาโครใหม่ ในกรณีนี้ผมเรียกมันว่าเช็คคำตอบ
ทั้งหมดนี้เป็นการคำนวณ (สำหรับแผ่นงานนี้เท่านั้น) และตรวจสอบว่าผลรวมของคำตอบที่คาดหวังตรงกับผลรวมของคำตอบของผู้เล่นหรือไม่ หากตัวเลขไม่ตรงกัน กล่องข้อความจะปรากฏขึ้นเพื่อบอกให้ลองอีกครั้ง หากสำเร็จ เราจะเลิกซ่อนแผ่นงานสำหรับห้องที่ 2
นอกจากนี้ยังมีการจัดรูปแบบตามเงื่อนไขในเซลล์ B28 พร้อมลูกศรเพื่อแจ้งให้ผู้ใช้ย้ายแท็บ
ขั้นตอนที่ 4: รับคำถามที่แตกต่างกัน
ในการรับคำถามใหม่สำหรับผู้เล่น เราเพียงแค่เรียกใช้การคำนวณซ้ำทั้งแผ่นที่ 2 (แผ่นตัวเลขสุ่ม) จากนั้นในแผ่นห้อง 1 ซึ่งจะทำให้ VLOOKUP อ้างอิงชุดตัวเลขใหม่และดึงตัวเลขใหม่เข้ามา คำถามที่เกี่ยวข้อง โค้ดชิ้นนี้จะล้างส่วนคำตอบของผู้เล่นด้วย
ขั้นตอนที่ 5: ห้อง 2
ห้องที่ 2 เป็นปริศนาตรรกะและความจำ ผู้ใช้ที่เรานำเสนอด้วยลำดับสีที่สร้างแบบสุ่ม 6 สี ซึ่งใช้ฟังก์ชัน RANDBETWEEN อีกครั้งด้วยช่วง 1-10
มีกฎการจัดรูปแบบตามเงื่อนไขที่ยึดตามตัวเลขในเซลล์ที่สีเติมและสีฟอนต์เปลี่ยนไปตามค่า
ผู้เล่นจะต้องป้อนตัวเลขเหล่านี้ตามลำดับแล้วป้อนเช็ค ไม่มีเงื่อนงำใด ๆ ว่าสีใดเป็นหมายเลขใด ดังนั้นเมื่อพวกเขาทดสอบ พวกเขาต้องจำผลลัพธ์ที่ได้สำหรับแต่ละรายการ
อีกครั้ง ค่าในเซลล์คำตอบจะถูกรวม คำตอบของผู้เล่นจะถูกรวมด้วย และมาโครรันการคำนวณ เติมสี และทดสอบผลลัพธ์ สิ่งนี้จะแจ้งให้ผู้เล่นลองอีกครั้งหรือแสดงความยินดีกับพวกเขาที่ชนะ
นอกจากนี้ยังมีปุ่มลำดับใหม่เพื่อให้ผู้เล่นได้สีใหม่ ซึ่งจะรันการคำนวณแต่เฉพาะในเซลล์ในแถวที่ 10 และล้างคำตอบของผู้เล่นในแถวที่ 12
ฉันพยายามอัปโหลดเกมแล้ว แต่เนื่องจากเป็นไฟล์.xlsm จึงไม่อนุญาต ดังนั้นโปรดดาวน์โหลดสำเนาจากที่นี่ หากคุณมีคำถามใดๆ ส่งข้อความถึงฉัน