tranthanhhai
Thành viên hoạt động
- Tham gia
- 22/3/07
- Bài viết
- 111
- Được thích
- 12
Tôi đọc trong trang web trẻ thơ thấy hướng dẫn làm VBA đánh từ vào và máy nó tự động đọc trong Power Point. nhưng thực hiện bước 1 thì không sao tìm ra TextToSpeech Class trong máy mình.
Tôi trích lại cách làm mà tôi đọc được nhờ các bạn làm thử dúp tôi:
Để làm được một cái bản slide biết "nói" những gì bạn đánh vào thì bạn phải sử dụng VBA thông qua một điều khiển có tên gọi là "TextToSpeech" và khoảng độ 5~6 dòng lệnh. Thứ tự công việc như sau:
1. Mở PP, mở slide của bạn ra, cuộn đến slide định chèn điều khiển phát âm, bấm Alt-F11. Cửa sổ Visual Basic For Application(VBA) sẽ mở ra.
2. Bạn chọn menu Insert/UserForm, bạn sẽ thấy có một cái cửa sổ User Form 1 xuất hiện.
3. Ở cửa sổ ToolBox (Nếu không thấy nó thì chọn menu View/ToolBox) bấm chuột phải vào vùng trống (không có nút) và chọn Additional Control.
4. Ở cửa sổ Additional Control trong ô Available Control, bạn cuộn xuống và tìm "TextToSpeech Class". Bạn sẽ thấy một cái miệng xuất hiện ở ToolBox. Cái miệng hơi bị xấu
, mặc dù là bác Bill đã "cố gắng" vẽ cho nó ra là miệng phụ nữ
. Cái miệng nó sẽ mấp máy khi phát âm, và bạn có thể chỉnh sửa, thêm răng thêm lưỡi nếu thích
. Tuy nhiên, bạn cũng đừng lo lắng về nó quá. Trong những slide có thể có sự vui nhộn thì để cái miệng đó lại để nó mấp máy lúc phát âm, còn những slide nghiêm túc có thể phải dấu nó đi, bằng cách click vào nó và điều chỉnh các thuộc tính ở cửa sổ "Properties" trong góc trái phía dưới.
5. Bạn cần thêm 2 điều khiển TextBox và CommandButton bằng cách click vào cửa sổ công cụ và "vẽ" nó lên UserForm1. Bạn sẽ chỉnh sửa nó theo ý bạn, thu nhỏ phóng to hay kéo dài thu ngắn thì tùy, sắp sao cho đẹp mắt là được.
6. Điều chỉnh thuộc tính thể hiện bằng các Properties ở cửa sổ góc trái phía dưới cho tất cả các thứ như UserForm1, cái miệng, TextBox và Command Button. Có mấy thuộc tính bạn cần lưu ý như sau.
a. (Name). Tên điều khiển, cái này bạn nên để mặc định, thường là UserForm1, TextToSpeech1, TextBox1 và CommandButton1. Các số 1, 2... sau tên điều khiển do VBA tự thêm vào để tránh trùng lặp khi có 2 điều khiển giống nhau. Khi lập trình bạn phải lưu ý sử dụng đúng tên điều khiển của mình nếu không code sẽ báo lỗi. Ở đây tạm thời mình sẽ để tên điều khiển mặc định cho bạn dễ làm theo.
b. Caption: "Tên" điều khiển được thể hiện khi trình bày, không liên quan tới việc lập trình, để cho nó có vẻ "pro" là chính. Ở ví dụ gửi kèm, mình đặt tên nút bấm là "Speak It!" , ví dụ thế. Bạn có thể "Say it your way" nếu thích.
c. Font: Font chữ thể hiện, quan trọng nhất đối với điều khiển Textbox, nó sẽ liên quan tới kiểu chữ khi bạn đánh vào. Trong ví dụ kèm theo, mình để font Tahoma cỡ 36.
d. ForeColor: Màu chữ, giống như thuộc tính Font. Có thể xanh đỏ nếu thích.
e. Visible : Quan trọng nhất với cái miệng. Với Visible bằng False, cái miệng sẽ vẫn hoạt động nhưng bị ẩn đi, dùng cho trường hợp slide cần nghiêm túc như mình đã nói ở trên.
7. Tạm đóng cửa sổ VBA lại quay trở về Slide. Bạn sẽ bấm menu View của PP, (nhớ là menu của PP và menu của VBA là khác nhau) chọn ToolBar, Control toolbox . (hơi giống như của VBA). Bạn cũng sẽ chèn một CommandButton vào Slide, ở chỗ nào đó bạn thấy thuận tiện. Cũng co kéo chỉnh sửa sao cho vừa ý. Sau đó Click đúp vào nó, bạn sẽ được đưa trở về cửa sổ VBA, và bạn có thể chỉnh sửa "Caption" của nó theo ý mình. Nút này sẽ có tác dụng kích hoạt Userform1 (Speaker) khi đang trình chiếu.
8. Phần "User Interface" đã xong. Giờ là đến lúc "code". Ở cửa sổ VBA, bạn sẽ thấy xuất hiện thêm 1 cửa sổ gọi là "Presentation1 - Slide1 (code)". Nếu không thấy nó, tìm đến góc trái phía trên của VBA nơi có cửa sổ Project - VBA Project. Bạn sẽ thấy một dòng là "slide1". Bấm chuột phải vào nó, chọn "View code". Và đánh dòng sau đây vào. Chú ý là dòng Private Sub... và End Sub VBA đã thêm sẵn cho bạn, bạn chỉ việc thêm những dòng còn lại
Mã:
Private Sub CommandButton1_Click()
Load UserForm1
UserForm1.Show
End Sub
9. Tại VBA, dòng UserForm1 cửa sổ Project góc trái phía trên bạn click chuột phải vào "UserForm1" chọn "View code", và xóa tất cả các cái có sẵn bên trong đi và paste code này vào
Mã:
Private Sub CommandButton1_Click()
On Error GoTo Sub_Err
TextToSpeech1.Speak TextBox1.Value
Exit Sub
Sub_Err:
TextToSpeech1.Speak "Text input error"
End Sub
11. Vậy là xong. Tại bất cứ Slide nào muốn "Speak" thì bạn chỉ cần chèn Command Button và làm bước 8 trên đây (không cần làm bước 9 nữa).
Bạn có thể nghiên cứu các thuộc tính của mình để chỉnh sửa "phần mềm" cho nó đẹp.
Enjoy !
Tôi trích lại cách làm mà tôi đọc được nhờ các bạn làm thử dúp tôi:
Để làm được một cái bản slide biết "nói" những gì bạn đánh vào thì bạn phải sử dụng VBA thông qua một điều khiển có tên gọi là "TextToSpeech" và khoảng độ 5~6 dòng lệnh. Thứ tự công việc như sau:
1. Mở PP, mở slide của bạn ra, cuộn đến slide định chèn điều khiển phát âm, bấm Alt-F11. Cửa sổ Visual Basic For Application(VBA) sẽ mở ra.
2. Bạn chọn menu Insert/UserForm, bạn sẽ thấy có một cái cửa sổ User Form 1 xuất hiện.
3. Ở cửa sổ ToolBox (Nếu không thấy nó thì chọn menu View/ToolBox) bấm chuột phải vào vùng trống (không có nút) và chọn Additional Control.
4. Ở cửa sổ Additional Control trong ô Available Control, bạn cuộn xuống và tìm "TextToSpeech Class". Bạn sẽ thấy một cái miệng xuất hiện ở ToolBox. Cái miệng hơi bị xấu
5. Bạn cần thêm 2 điều khiển TextBox và CommandButton bằng cách click vào cửa sổ công cụ và "vẽ" nó lên UserForm1. Bạn sẽ chỉnh sửa nó theo ý bạn, thu nhỏ phóng to hay kéo dài thu ngắn thì tùy, sắp sao cho đẹp mắt là được.
6. Điều chỉnh thuộc tính thể hiện bằng các Properties ở cửa sổ góc trái phía dưới cho tất cả các thứ như UserForm1, cái miệng, TextBox và Command Button. Có mấy thuộc tính bạn cần lưu ý như sau.
a. (Name). Tên điều khiển, cái này bạn nên để mặc định, thường là UserForm1, TextToSpeech1, TextBox1 và CommandButton1. Các số 1, 2... sau tên điều khiển do VBA tự thêm vào để tránh trùng lặp khi có 2 điều khiển giống nhau. Khi lập trình bạn phải lưu ý sử dụng đúng tên điều khiển của mình nếu không code sẽ báo lỗi. Ở đây tạm thời mình sẽ để tên điều khiển mặc định cho bạn dễ làm theo.
b. Caption: "Tên" điều khiển được thể hiện khi trình bày, không liên quan tới việc lập trình, để cho nó có vẻ "pro" là chính. Ở ví dụ gửi kèm, mình đặt tên nút bấm là "Speak It!" , ví dụ thế. Bạn có thể "Say it your way" nếu thích.
c. Font: Font chữ thể hiện, quan trọng nhất đối với điều khiển Textbox, nó sẽ liên quan tới kiểu chữ khi bạn đánh vào. Trong ví dụ kèm theo, mình để font Tahoma cỡ 36.
d. ForeColor: Màu chữ, giống như thuộc tính Font. Có thể xanh đỏ nếu thích.
e. Visible : Quan trọng nhất với cái miệng. Với Visible bằng False, cái miệng sẽ vẫn hoạt động nhưng bị ẩn đi, dùng cho trường hợp slide cần nghiêm túc như mình đã nói ở trên.
7. Tạm đóng cửa sổ VBA lại quay trở về Slide. Bạn sẽ bấm menu View của PP, (nhớ là menu của PP và menu của VBA là khác nhau) chọn ToolBar, Control toolbox . (hơi giống như của VBA). Bạn cũng sẽ chèn một CommandButton vào Slide, ở chỗ nào đó bạn thấy thuận tiện. Cũng co kéo chỉnh sửa sao cho vừa ý. Sau đó Click đúp vào nó, bạn sẽ được đưa trở về cửa sổ VBA, và bạn có thể chỉnh sửa "Caption" của nó theo ý mình. Nút này sẽ có tác dụng kích hoạt Userform1 (Speaker) khi đang trình chiếu.
8. Phần "User Interface" đã xong. Giờ là đến lúc "code". Ở cửa sổ VBA, bạn sẽ thấy xuất hiện thêm 1 cửa sổ gọi là "Presentation1 - Slide1 (code)". Nếu không thấy nó, tìm đến góc trái phía trên của VBA nơi có cửa sổ Project - VBA Project. Bạn sẽ thấy một dòng là "slide1". Bấm chuột phải vào nó, chọn "View code". Và đánh dòng sau đây vào. Chú ý là dòng Private Sub... và End Sub VBA đã thêm sẵn cho bạn, bạn chỉ việc thêm những dòng còn lại
Mã:
Private Sub CommandButton1_Click()
Load UserForm1
UserForm1.Show
End Sub
9. Tại VBA, dòng UserForm1 cửa sổ Project góc trái phía trên bạn click chuột phải vào "UserForm1" chọn "View code", và xóa tất cả các cái có sẵn bên trong đi và paste code này vào
Mã:
Private Sub CommandButton1_Click()
On Error GoTo Sub_Err
TextToSpeech1.Speak TextBox1.Value
Exit Sub
Sub_Err:
TextToSpeech1.Speak "Text input error"
End Sub
11. Vậy là xong. Tại bất cứ Slide nào muốn "Speak" thì bạn chỉ cần chèn Command Button và làm bước 8 trên đây (không cần làm bước 9 nữa).
Bạn có thể nghiên cứu các thuộc tính của mình để chỉnh sửa "phần mềm" cho nó đẹp.
Enjoy !