Page 1 of 2

สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Thu Apr 23, 2020 10:00 am
by Juthaporn
สวัสดีค่ะ คือหนูเอา Code VBA เพื่อเรียกไฟล์เสียงมาใช้ค่ะ แต่ติดปัญหาแบบนี้ค่ะ อยากทราบว่าจะสามารถแก้ไขยังไงได้บ้างค่ะ
หนูไม่เคยใช้ VBA ด้วยค่ะ แต่ต้องเอามาใช้ในการทำงานรบกวนสอบถามอาจารย์ด้วยนะคะ
VBA.JPG

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Thu Apr 23, 2020 8:41 pm
by snasui
:D การสอบถามปัญหา VBA กรุณาทำตามกฎการใช้บอร์ดข้อ 5 ด้านบนจะได้สะดวกในการตอบของเพื่อนสมาชิกครับ :roll:

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Thu Apr 23, 2020 9:12 pm
by Juthaporn
หนูมีไฟล์เสียงอยู่ที่เครื่องหน้าจอ Desktop ค่ะชื่อไฟล์ว่า Error1.wav หนูต้องการให้ถ้าใส่ข้อมูลในช่อง B5:B76 แล้วตรงช่อง E5:E76 มันขึ้นว่า NG ก็ให้มีเสียง Error ค่ะ แต่หนูลองทำตามใน Code ก็ยังไม่มีเสียง Error รบกวนสอบถามอาจารย์ด้วยนะค่ะ
VBA1.JPG
VBA.JPG
4M.xlsm

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Thu Apr 23, 2020 9:33 pm
by snasui
:D จาก Error แสดงว่าใช้ Windows 64bit จะต้องแก้ API ฟังก์ชั่นเป็นด้านล่างครับ

Code: Select all

Public Declare PtrSafe Function sndPlaySound32 _
    Lib "winmm.dll" _
    Alias "sndPlaySoundA" ( _
        ByVal lpszSoundName As String, _
        ByVal uFlags As Long) As Long

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Fri Apr 24, 2020 11:14 am
by Juthaporn
สามารถใช้งานได้แล้วค่ะ แต่เสียง Error1.wav ที่หนูต้องการยังไม่มีเสียงค่ะหนูต้องแก้ไขตรงส่วนไหนคะ
VBA00.JPG

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Fri Apr 24, 2020 4:22 pm
by Juthaporn
หนูต้องการให้ไฟล์เสียงอยู่ที่หน้าจอ Desktop ค่ะ แล้วหนูก็เปลี่ยนพื้นที่การวางไฟล์เสียงใหม่แบบตามภาพค่ะแต่ยังไม่มีเสียง หนูต้องเปลี่ยนตรงส่วนไหนไหมคะ รบกวนอาจารย์ด้วยนะค่ะ
pic1.JPG
pic2.JPG

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 8:03 am
by snasui
:D กรุณาแนบไฟล์ล่าสุดที่ได้นำ Code ไปปรับใช้มาแล้วเสมอจะได้ตอบต่อไปจากนั้นครับ

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 9:04 am
by Juthaporn
หนูเปลี่ยน ถ้าใส่ข้อมูลในช่อง B4:B76 แล้วถ้าในช่อง E5:E76 ขึ้นคำว่า NG ก็ให้แสดงที่ช่อง G4 ค่ะ แล้วให้มีเสียงError ซึ่งหนูต้องการเสียงให้วางเก็บไว้ที่หน้าจอDesktop ค่ะ หนูเลยลองเปลี่ยนพื้นที่การวางไฟล์เสียงใหม่แต่ก็ยังไม่มีเสียงค่ะ หนูตรงเปลี่ยนCode ตรงไหนไหมคะ รบกวนอาจารย์ด้วยนะคะ
pic3.JPG
4M (1).xlsm

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 9:16 am
by snasui
:D ค่อย ๆ ถามตอบกันไปครับ

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

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 10:07 am
by Juthaporn
หนูจะดึงไฟล์เสียงที่อยู่หน้าจอDesktopค่ะ หนูเลยเปลี่ยนพื้นที่การวางไฟล์เสียงใหม่ แทนที่ Windows > Media ตามภาพที่แนบค่ะ แต่ก็ยังไม่มีเสียงErrorค่ะ หนูเลยอยากรู้ว่าหนูต้องเปลี่ยนตรงไหนไหมคะ รบกวนอาจารย์ด้วยนะคะ
pic4.JPG

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 10:35 am
by snasui
:D ผมเข้าใจสิ่งที่ต้องการครับ

แต่กรุณาอธิบายว่า ผมมีลำดับการทดสอบอย่างไรจึงจะพบว่ามี Error ดังกล่าว คีย์ตรงไหน คลิกตรงไหน หรือเปิดไฟล์มามันจะพบเลย ฯลฯ กรุณาอธิบายมาให้เข้าใจครับ

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 11:16 am
by Juthaporn
1. ต้องคีย์ข้อมูลที่ช่อง B4 ก่อนค่ะ เป็นการระบุ Master ของ Part no.
2. แล้วก็คีย์ Part no.ในช่อง B5:B76 ให้ตรงกับช่อง B4 แต่ถ้าคีย์ Part no.ผิด ในช่อง E ก็ให้ขึ้นว่า NG เช่น ตัวอย่างในภาพ คีย์ Part no. ในช่อง B13 ผิด ช่อง E13 เลยแสดงคำว่า NG ค่ะ
pic5.JPG
3. ถ้าในช่อง E5:E76 ช่องไหนที่มีการแสดงค่าเป็น NG ก็จะไปแสดงสถานะคำว่า NG ที่ช่อง G4
4. พอช่อง G4 ขึ้นคำว่า NG แล้วหนูอยากให้มีเสียง Error เพื่อจะได้รู้ว่าเราคีย์ข้อมูลผิด Part no. ค่ะ
4M (1).xlsm

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 11:58 am
by snasui
:D ลองทำตามขั้นตอนในภาพ หากตัว Highlight สีเหลืองปรากฎดังภาพแสดงว่าไม่มีไฟล์เสียงครับ

ข้อ 2 ในภาพคือให้คลิกยังบรรทัดใด ๆ ครับ

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 12:25 pm
by Juthaporn
เป็น Highlight สีเหลืองค่ะ หนูจะทำให้มีไฟล์เสียงต้องเปลี่ยนตรงส่วนไหนไหมคะ ขอสอบถามอาจารย์ด้วยนะคะ
pic6.JPG

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 12:34 pm
by snasui
:D การทำให้มีไฟล์เสียงก็ต้องไปหาไฟล์เสียงนั้น ๆ มาวางเสียก่อนครับ

ไฟล์ที่จะเรียกใช้ตาม Code ที่เขียนมาคือ Error1.wav เมื่อไม่มีก็ต้องหามาวางจะหาจากไหนก็แล้วแต่สะดวกครับ เช่น เครื่องอื่น ใน Internet สร้างขึ้นมาเอง เป็นต้น

สิ่งที่ทำอยู่นี้ต้องอาศัย Windows API เข้ามาช่วย ซึ่งต้องอาศัยความเข้าใจ Code พอสมควร ใน Excel เองมี Code ให้ใช้งานแบบง่าย ๆ อยู่ครับ เช่น Application.Speech.Speak "Error" ลองเอา Statement นี้ไปใส่ใน Sub PlayIt ก่อน PlayTheSound "Error1.wav" แล้วสังเกตดูผลครับ

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 12:52 pm
by Juthaporn
ใส่แบบนี้ใช่ไหมคะ หนูลองทำแล้วก็ยังไม่มีเสียงค่ะ หนูไม่เคยใช้งาน VBA เลยไม่ค่อยเข้าใจหนูเลยต้องทำตาม Code และสอบถามอาจารย์ค่ะรบกวนด้วยนะคะ
pic7.JPG

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 12:54 pm
by snasui
:D ลบเครื่องหมาย ' ทิ้งไปครับ

เครื่องหมาย ' หมายถึงข้อความที่ตามหลังเครื่องหมายนี้คือ Comment หรือคำอธิบาย Code ซึ่งโปรแกรมจะรันข้ามไป

ยิ่งไม่เคยใช้งาน VBA ยิ่งไม่ควรเลือกทำงานกับ Windows API ครับ

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 1:14 pm
by Juthaporn
ลองแล้วค่ะเป็นเสียงคำพูด Error แต่ไม่มีเสียง Error1.wav ค่ะ

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Sat Apr 25, 2020 1:36 pm
by snasui
:D เมื่อมีเสียงพูดก็แสดงว่า Code นั้นทำงานได้แล้วครับ

ส่วนเสียง Error1.wav ผมตอบไปที่โพสต์ #15 แล้วว่าเกิดจากอะไร จึงไม่ขอตอบอีก ให้กลับไปอ่านใหม่ให้เข้าใจครับ

Re: สอบถามการเรียกไฟล์เสียงแต่ติดปัญหาไม่สามารถใช้งานได้ค่ะ

Posted: Tue May 12, 2020 11:45 am
by Juthaporn
หนูทำได้แล้วค่ะ ขอบคุณมากนะคะ