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

หรือติดต่อเข้ามาทาง Inbox ที่ เฟซบุ๊ค ผมครับ

หน้าหลัก
ข่าวสาร - บทความ ทั้งหมด
VB 6/VB.Net
ASP/ASP.Net
จับฉ่ายคอมพิวเตอร์
เรียนรู้ผ่าน Flash Movie
บทความที่มีผู้ตอบล่าสุด  
 RSS Feeds
 ดาวน์โหลดโปรแกรม RSS Reader ได้ที่นี่ ...   Download โปรแกรม RSS Reader

Forum - www.g2gnet.com
Webmaster - www.g2gnet.com
Visitors - Session views
 5 5 9 1 6 8 4

7 ธันวาคม พ.ศ.2549
32 Users On-Line.
Visitors - Page views
 8 9 4 6 7 3 4
1 กุมภาพันธ์ พ.ศ.2551

Google   
เว็บ g2gnet.com
ขนาดตัวอักษร:  

การนำโปรแกรม Power Point มาทำเป็น CAI

Category »  จับฉ่ายคอมพิวเตอร์
โดย : Webmaster เมื่อ 14/7/2553   เวลา: 10:21
(อ่าน : 136169) 
ดาวน์โหลด
ดาวน์โหลดไฟล์ตัวอย่าง Visual Basic for Application (VBA) สำหรับ PowerPoint (PPT 2003)

เรื่องที่เกี่ยวข้อง
โปรแกรม PowerPoint กับการเชื่อมต่อระบบฐานข้อมูล Access - การทำระบบ Login
โปรแกรม PowerPoint กับ CAI - ตอนการสร้างบทเรียนแบบไดนามิค
โปรแกรม PowerPoint กับ คอมพิวเตอร์ช่วยสอน ตอนการลากวางวัตถุ (Drag & Drop)
ขั้นตอนของการเปิดเสียง-หยุดเสียง ในแต่ละ Scene ให้กับโปรแกรม SwishMax
การบันทึกเสียงประกอบการผลิตสื่อการเรียนการสอน ด้วยโปรแกรม Acoustica MP3 Audio Mixer
การทำข้อสอบแบบเติมคำด้วย Swishmax
ใครว่าทำข้อสอบผ่าน Flash มันเป็นเรื่องยากส์
การทำปุ่ม หรือ เมนู แบบง่ายๆ (ถึงง่ายมาก) ด้วยโปรแกรม SwishMax (Flash Video)
สร้างเมนูในรูปแบบ Flash โดยใช้โปรแกรม SwishMax อย่างง่าย
การใช้งาน SwishMax กับการทำภาพเคลื่อนไหว ... พื้นฐานสุดๆ จนแทบไม่อยากเชื่อ
Visual Basic 6.0 กับการพัฒนาสื่อการเรียน การสอน
เรียนรู้ SwishMax (หรือ Flash) เพื่อรับส่งข้อมูลไปมากับ MS Visual Basic 6.0 ภาค 1
เรียนรู้ SwishMax (หรือ Flash) เพื่อรับส่งข้อมูลไปมากับ MS Visual Basic 6.0 ภาค 2
การใช้งาน Drag & Drop ใน VB 6 เพื่อพัฒนาสื่อการเรียน การสอน (ภาค 1)
การใช้งาน Drag & Drop ใน VB 6 เพื่อพัฒนาสื่อการเรียน การสอน (ภาค 2)
โปรแกรมสุ่มตัวเลขจำนวนเต็มแบบไม่ให้ซ้ำกันเลย - Random Number
การประยุกต์ใช้งาน MS Visual Basic 6.0 กับการพัฒนาสื่อการเรียนการสอน (คณิตศาสตร์เพื่อหนูน้อย)

ก่อนอื่นต้องขอกล่าวถึง CAI ก่อนน่ะครับ CAI (Computer Assisted Instruction) คือ การนำเอาคอมพิวเตอร์เข้ามาช่วยในการเรียน และ การสอน หรือ อย่างใดอย่างหนึ่งก็แล้วแต่ นั่นคือ ไม่ได้เอามันมาสอนแทนครูน่ะครับ (ซึ่งมีหลายคนเข้าใจผิดไปเยอะ) ... หลายท่านก็คงทราบดีว่าโปรแกรม PowerPoint (จุดอิทธิฤทธิ์) ตัวนี้ เหมาะกับงานด้านประชาสัมพันธ์ นำเสนองาน ซะเป็นส่วนใหญ่ คือ แบบว่ามันเดินหน้า ถอยหลังได้ อ้าว! แล้วมันจะเอาไปทำเป็น CAI ได้ยังไง ก็ในเมื่อเรื่องของ การทำ CAI นั้นมันจะต้องมีการโต้ตอบ (Interactive) กับผู้เรียนด้วย แต่ PowerPoint มันทำไม่ได้ ไฉนเลยถึงจะกล้าบังอาจ มาท้าทายโปรแกรมไฮโซจำพวก AuthorWare หรือ Flash ได้ล่ะ ? ผมขอบอกก่อนได้เลยว่า ต่อไปก็อย่าไปดูถูก หรือ เผลอตัวหลงปล่อยไก่ ในสิ่งที่คุณอาจจะยังไม่รู้จริง กับสายพันธุ์ของ MicroSoft Office เข้าซะล่ะ.

บริษัทฯไมโครซอฟท์ ได้ออกแบบภาษาโปรแกรมมาตัวหนึ่ง ที่เรียกว่า Visual Basic ภาษาตัวนี้ถูกบรรจุเอาไว้ใน Miscrosoft Office ทุกรุ่นเพื่อใช้ในการพัฒนาในขั้นสูง ที่เราจะรู้จักกันดีในนามของ Visual Basic for Application (VBA) อันเป็นภาษาที่คล้ายคลึงกับภาษา Basic แต่จะนำไปใช้งานแตกต่างกันออกไปตามโปรแกรมแต่ละตัว เช่น หากนำไปใช้ใน MS Excel ก็จะเรียกการใช้งานร่วมกับ Work Sheet และใน PowerPoint ก็ต้องเรียกใช้งานมันร่วมกับ Slide (ในภาษา Basic จริงๆจะไม่มี)
วัตถุประสงค์ ...
สำหรับงานนี้ เวลานี้ ... ผมจะไม่อธิบายถึงขั้นตอนการออกแบบ หรือ การเขียนโค้ด ในการใช้งาน VBA สำหรับโปรแกรม PowerPoint หรอกน่ะครับ จุดมุ่งหมายหลักๆ ก็เพื่อที่จะทำให้เห็นเป็นแนวทาง ของการพัฒนาสื่อการเรียน/การสอน ในลักษณะของการโต้ตอบกับผู้เรียนได้ (Interactive) ด้วยโปรแกรมที่มันอยู่ใกล้ๆตัวเราเอง ... ซึ่งไม่ว่าคุณจะพัฒนาสื่อ CAI ด้วยโปรแกรมอะไรก็แล้วแต่ หากไม่ฝึกการเขียน Script หรือ การเขียนโค้ดแล้วนั้น มันไม่มีทางที่จะทำให้งานมันออกมาได้ดั่งใจนึกหรอกครับ ... และไม่มีใครจะทำออกมาได้ดีเท่ากับคนสอนเอง ก็เพราะคนสอนในเรื่องนั้นๆมานานหลายปี ก็ย่อมจะรู้ว่าดีว่าจะสื่ออะไรไปยังผู้เรียนได้ ... เพียงแต่หลายท่านยังขาดความรู้ ความเข้าใจในการใช้งานโปรแกรมคอมพิวเตอร์ เท่านั้นเอง ... แล้วจะให้ทำเป็นได้อย่างไร ทุกท่านก็คงมีคำตอบให้กับตัวเองอยู่แล้วแหละครับ
อ่านหลักการในการแปลงเลขฐาน 10 เป็นเลขฐาน 2 ด้วยวิธีการหารสั้น (สมัยเด็กๆก็ยังได้นำมาใช้)

หBAProject ในการออกแบบฟอร์ม และ เขียนโค้ด VBA เข้าไป
ส่วนของ VBAProject ในการออกแบบฟอร์ม และ เขียนโค้ด VBA เข้าไป

หน้าจอการออกแบบ
หน้าจอการออกแบบจาก PowerPoint

ลำดับขั้นตอนการทำงาน
ลำดับขั้นตอนการทำงาน ตามหมายเลข 1 - 4
1. คลิ๊กเลือกเพื่อให้หน้าจอป้อนเลขฐาน 10 แสดงผลขึ้นมา
2. ป้อนตัวเลขฐาน 10 เข้าไป ... ในโค้ด VBA จะมีการล็อคปุ่ม เพื่อให้ผู้เรียนคีย์ได้แค่ตัวเลข 0 - 9 เท่านั้นครับ
3. คลิ๊กปุ่มเพื่อทำการคำนวณผล
4. จะแสดงผลออกทางหน้าจอภาพ Slide ของ PowerPoint

VBA สำหรับ Slide1 ที่อยู่ในโปรแกรม PowerPoint

' เกิดการคลิ๊กปุ่ม เพื่อทำการแปลงค่าเลขฐาน 10 เป็นเลขฐาน 2
Private Sub cmdDec2Bin_Click()
    ' แสดงฟอร์มการป้อนเลขฐาน 10 เพื่อทำการคำนวณผล
    frmConvertDec2Bin.Show vbModal
End Sub

' จบการทำงาน ปิด PowerPoint
Private Sub cmdExit_Click()
    ' อ้างอิงชื่อไฟล์
    With Application.Presentations("Sample CAI.ppt")
        ' สั่งบันทึก (Save) ก่อนออก
        .Saved = True
        .Close
    End With
End Sub
VBA สำหรับ UserForm ในการป้อนค่าเลขฐาน 10 และทำการแปลงเลขฐาน (frmConvertDec2Bin)

Private Sub cmdConvertDec2Bin_Click()
    ' เก็บค่าคำตอบจากการเอาเศษของเลขฐาน 2
    Dim Bit As String
    ' ตัวแปรเก็บค่าเลขฐาน 10 และ ทำไปเรื่อยๆจนกว่าจะทำให้ Dec มีค่าเป็น 0
    Dim Dec As Long
    
    ' ตรวจสอบว่ามีการป้อนค่าตัวเลขฐาน 10 ลงใน TextBox หรือไม่
    If Trim(txtDecimal.Text) = "" Or Len(Trim(txtDecimal.Text)) = 0 Then
        txtDecimal.SetFocus
        Exit Sub
    End If
    
    ' รับค่าเลขฐาน 10 จาก TextBox (txtDecimal)
    Dec = CLng(txtDecimal.Text)
    
    ' DO WHILE ... เงื่อนไขเป็นจริงจะวนรอบ ... เท็จเมื่อไหร่ก็จะออกจากลูป
    Do While (Dec > 0)
        Bit = (Dec Mod 2) & Bit
        Dec = Dec \ 2
    Loop

    ' แสดงผลการหาเลขฐาน 2 ลงใน Slide1
    Slide1.txtBinary.Text = Bit
    
End Sub

' #######################################################
' ฟังค์ชั่นตรวจสอบการกดคีย์ให้รับได้เฉพาะค่า 0 - 9 (เพราะมันเลขฐาน 10 นี่ครับ จึงรับตัวเลขได้แค่นี้)
' #######################################################
Function CheckDecimal(ByVal KeyAscii As Integer)
    Select Case KeyAscii
        ' ASCII Code 48 - 57 คือ ตัวอักขระ 0 - 9
        Case 48 To 57
        ' ASCII Code 8 คือ Back Space
        ' ASCII Code 13 คือ Enter
        Case 8, 13
        Case Else
            KeyAscii = 0
    End Select
    CheckDecimal = KeyAscii
End Function

Private Sub txtDecimal_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    ' หากเป็นการกดคีย์ Enter (vbKeyReturn มีค่า ASCII Code = 13)
    If KeyAscii = vbKeyReturn Then
        KeyAscii = 0
        SendKeys "{TAB}"
    Else
        ' ไปตรวจสอบค่าในฟังค์ชั่นก่อนว่า มีการกดเลข 0 - 9 หรือไม่
        KeyAscii = CheckDecimal(KeyAscii)
    End If
End Sub

Private Sub UserForm_Initialize()
    ' การตั้งตำแหน่งของฟอร์มการป้อนข้อมูลเลขฐาน 10
    With Me
        .StartUpPosition = 0
        .Top = 10
        .Left = Application.Left + Application.Width - Me.Width * 2
    End With
End Sub

' ทำการโหลดฟอร์มการป้อนค่า และ การแปลงเลขฐาน 10 ขึ้นมาแสดง
Private Sub UserForm_Activate()
    ' เคลียร์ค่าคำตอบ
    Slide1.txtBinary.Text = ""
    ' เคลียร์ที่ป้อนค่าเลขฐาน 10
    txtDecimal.Text = ""
End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    ' ก่อนปิดฟอร์ม ให้เคลียร์ค่า TextBox (txtBinary) ให้เป็นค่าว่าง
    Slide1.txtBinary.Text = ""
End Sub
การเปิดไฟล์ตัวอย่างขึ้นมา

การเปิดไฟล์ PowerPoint ตัวอย่าง
การเปิดไฟล์ PowerPoint ตัวอย่างในตอนเริ่มต้น หากไม่มีการขึ้นหน้าจอแบบนี้ ให้เข้าไปแก้ไขตามภาพทางด้านล่าง

เลือกการรักกษาความปลอดภัย
เลือกการรักษาความปลอดภัย

เลือกการรักกษาความปลอดภัย
เลือกความปลอดภัยปานกลาง (ตามภาพ)

เวลาที่ต้องการให้ผู้เรียน Save ไฟล์ไว้เพื่อนำไปศึกษา หรือ ทบทวนบทเรียน ก็แค่ให้บันทึกไฟล์เป็น PowerPoint Show ที่มีนามสกุลเป็น PPS เพื่อแจกให้กับผู้เรียน ... ก็เป็นอันจบครับผม (หรือใช้โปรแกรมแปลงไฟล์เป็น EXE เพื่อให้ทำงานโดยไม่ต้องผ่านโปรแกรม PowerPoint เลยก็ได้)

เปิดภาพมิติมุมมองใหม่ของโปรแกรม PowerPoint กับการทำสื่อการเรียน และ การสอน CAI

Conclusion:
จากตัวอย่างที่นำมาแสดงนี้ ก็เพื่อที่จะให้หลายๆคนได้รู้จักกับคำว่า CAI มากยิ่งขึ้น ซึ่งไม่ใช่แค่เพียงการสร้างมันมาจากโปรแกรม AuthorWare/Flash ที่ทำออกมาให้เดินหน้า หรือ ถอยหลังได้ เท่านั้นเอง และนั่นก็คือ การเน้นที่จะทำให้ CAI มีปฏิสัมพันธ์ หรือ มีการโต้ตอบกับผู้เรียน ในลักษณะของ Dynamic ดังนั้นครู อาจารย์ หรือ ผู้ที่คิดจะผลิต CAI ออกมา ควรจะต้องทำความเข้าใจกับเนื้อหาที่จะสอนอย่างละเอียด และ ค่อนข้างจะต้องมีความรู้ มีความเชี่ยวชาญเป็นอย่างมากในการใช้โปรแกรมคอมพิวเตอร์ ซึ่งในแนวทางนี้ เราจะใช้ในการออกแบบ CAI ในลักษณะรูปแบบที่เรียกว่า CourseWare ต่อไปนั่นเอง.
จี ทู จี เน็ต ดอต คอม - g2gNet Dot Com
เลขทะเบียนพาณิชย์อิเล็กทรอนิกส์ 0407314800231
CopyLeft © 2004 - 2099 g2gNet.Com All rights reserved.
Email: [email protected] หรือ โทร. 08-6862-6560