Bài giảng giúp làm quen với viết mã VBA trong Powerpoint để tăng điều khiển cho Powerpoin, chỉ dẫn ứng dụng VBA trong một số công việc:
1. Giải phương trình bậc hai (cho phép nhận các hệ số và tính ra các nghiệm).
2. Trắc nghiệm đơn giản (Có các tính năng Xáo trộn bộ đề trắc nghi nghiệm, Tạo phiếu trả lời, Tạo phiếu chấm điểm ).
42 trang |
Chia sẻ: tlsuongmuoi | Lượt xem: 2782 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu VBA cho Powerpoint, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
VBA cho PowerPoint
Giảng viên: Lê Văn Huỳnh
Trường: ESTIH
Visual Basic Editor
• Chọn Tools\Macros
• Chọn Visual Basic Editor
Mở modul đã có
• Trong cửa sổ Visual
Basic Editor, ở cánh
trái là Project
Explorer.
• Click vào các dấu
• Double-click vào
modul cần mở
Đối tượng Presentations
Mở một tệp trình diễn
• Mở tệp đã có:
Presentations.Open
Ví dụ:
Presentaions.Open “SlidePres.ppt”
• Mở tệp mới:
Presentations.Add(WithWindow)
Trong đó:
WithWindow = msoTrue nếu muốn tệp mới hiển
thị
WithWindow=msoFalse nếu muốn tệp mới ẩn
T¹o tÖp míi
Më tÖp SlidePres.ppt
Đối tượng Presentation
• Là đối tượng đại diện cho tệp trình diễn đang mở (.ppt)
• Các thuộc tính:
.FullName: Tên tệp đầy đủ (bao gồm cả đường dẫn).
Ví dụ: “C:\My Document\ESTIH.PPT”
.Name: Tên tệp (không có đường dẫn)
.Path: Đường dẫn
.Saved: Giá trị msoTrue nếu tệp đã được lưu vào đĩa
Giá trị msoFalse nếu tệp chưa được ghi
.SlideMaster: Trả về Slide chủ (Slide Master), khuôn mẫu của các
slide con.
.TitleMaster: Trả về slide chủ (TitleMaster), khuôn mẫu của các
slide tiêu đề (Trang đầu, trang bìa)
.Slides: Trả về tập hợp các slide con có trong trình diễn.
.SlideShowSettings: Đối tượng chứa các tùy chọn cài đặt cho trình
diễn
Đối tượng Presentation
• Các phương thức
.ApplyTemplate (Tên tệp): Áp đặt một thiết kế mẫu
.Close: Đóng trình diễn
.NewWindow: Mở cửa sổ mới cho trình diễn
.Save: Lưu trình diễn
.SaveAs: Lưu và đặt tên
.PrintOut: In ra máy in
¸p dông 012.pot
¸p dông Writing close-up design template.pot
Thªm cöa sæ míi
Đối tượng Slide
• Mỗi trình diễn PowerPoint được tạo nên từ nhiều Slide.
• Mỗi Slide là một đối tượng thuộc kiểu Slide.
• Slides là một đối tượng chứa tập hợp các đối tượng
Slide.
• Trong đối tượng Slides, mỗi slide được tham chiếu qua
chỉ số, hoặc qua tên gọi của nó.
– Ví dụ:
• ActivePresentation.Slides(1)
• ActivePresentation.Slides(“Slide1”)
• Đối tượng Slide có các thuộc tính qui định bố cục, chỉ
định các hiệu ứng chuyển tiếp, sao chép và xóa Slide.
Đối tượng Range
• Đối tượng Range là một thành phần của
đối tượng Slides, cho phép tập hợp một
số Slide thành một danh sách, trong đó
mỗi Slide có một chỉ số.
• Có thể truy cập các slide trong Range
thông qua chỉ số hoặc thông qua tên.
• Có thể tác động lên tất cả các slide bằng
cách sử dụng Range không có chỉ số.
Range
Tạo Slide mới
• Dùng phương thức Add:
Presentation.Slides.Add(Index, Layout)
• Layout là tham số cho phép chọn Design
Template (mẫu thiết kế) cho slide
• Ví dụ:
Width ActivePresentation.Slides
.add Index := Count+1
.Layout := ppLayoutOrgchart
End With
Thªm slide vµo cuèi tr×nh diÔn vµ hiÓn thÞ slide ®ã
Chèn các Slide từ một tệp
With ActivePresentation.Slides
.InsertFromFile FileName :=“C:\Presentations\Hinh10.ppt”, _
Index := .Count, _
SlideStart := 1, _
SlideEnd := 5
End With
ChÌn 4 slide tõ tÖp Hinh10.ppt vµo cuèi
tÖp nµy
Thay đổi thuộctính Slide
• Có thể thay đổi thuộc tính slide thông qua
thay đổi Slide chủ. Tác động sẽ làm thay
đổi tất cả các slide liênquan.
• Nếu muốn thay đổi từng slide riêng rẽ,
phải đặt thuộc tính FollowMaster…. Của
nó thành False.
• Ví dụ, muốn thay đổi màu nền của một
slide, phải đặt thuộc tính
FollowMasterBackGround thành False.
Thay đổi thuộc tính Slide Master
Set slideBack = ActivePresentation.SlideMaster.BackGround
slideBack.Fill.PresetGradient Style := msoGradientHorizontal, _
Variant := 1, PresetGradientType := msoGradientFire
Thay ®æi thuéc tÝnh nÒn cña tÊt c¶
c¸c Slide
§Æt l¹i
Đặt lại thuộc tính nền cho một Slide
riêng rẽ
With ActivePresentation.Slides(13)
.FollowMasterBackGround = False
.Background.Fill.PresetGradient _
Style := msoGradientVertical, _
Variant := 1, _
PresetGradientType := msoGradientFire
End With
Söa thuéc tÝnh nÒn cña Slide thø 13
Tr¶ l¹i thuéc tÝnh FollowMasterBackGround thµnh
True
Các thuộc tính khác của Slide
• Slide.Layout: Cách bố trí các khung trên Slide
• Slide.Master: Trả về Slide chủ của slide. Hai
biểu thức sau là tương đương:
– ActivePresentation.SlideMaster
– ActivePresentation.Slides(1).Master
• Slide.Name: Trả về tên của Slide
• Slide.Shapes: Trả về tập hợp các Shapes có
trong Slide, truy cập qua chỉ số.
• Slide.SlideShowTransition: Hiệu ứng chuyển
tiếp của Slide
Set Pres = Presentations.Add
'Pres.SaveAs FileName:=“Vidu.ppt”
With Pres
With .Slides
.Add(Index:=1, Layout:=ppLayoutTitle).Name = “Opener”
For i = 1 To 4
.Add(Index:=i + 1, Layout:=ppLayoutTitle).Name = “Vidu00” & i
Next i
End With
For i = 1 To 4
With .Slides(i + 1)
.FollowMasterBackground = False
.Background.Fill.PresetGradient _
Style:=i, _
Variant:=1, _
PresetGradientType:=msoGradientChromeII
With .SlideShowTransition
.EntryEffect = ppEffectBoxIn
.AdvanceOnTime = True
.AdvanceTime = 5
.SoundEffect.ImportFromFile
"c:\windows\media\dogbark.wav"
End With
End With
Next i
.SlideShowSettings.AdvanceMode = ppSlideShowManualAdvance
End With
Pres.ApplyTemplate "C:\Program Files\Microsoft
Office\Templates\Presentation Designs\014.pot"
Tạo các
Slide mới
và đặt
thuộc tính
cho các
Slide đó
VÝ dô minh häa
Các Shapes trong Slide
• Các tham số cần cung
cấp khi thêm Shape vào
Slide
– BeginX, BeginY
– EndX, EndY
– FileName
– Orientation
• Một số thuộc tính của
Shape
– TextFrame.TextRange.Text
– Shadow
– SafeArrayOfPoints
– AnimationSettings
– EntryEffect
– AutoShapeType
– Fill
– Left, Top
– Height, Width
– Visible
VÝ dô minh häa: Thay ®æi Text trong TextBox
Ví dụ
• Tạo một trình diễn
• Tạo Slide đầu tiên
• Cài đặt các xác lập văn bản và hoạt hình
CommandButton1
Một số phương thức của Shape
• Apply: Cho phép áp dụng
một định dạng có sẵn
chép từ Shape khác.
• Duplicate: Tạo bản sao
• Flip: Lật
• IncrementLeft: Di chuyển
ngang
• IncrementRotation: Quay
• IncrementTop: Di chuyển
dọc
• PickUp: Sao chép định
dạng
• Select: Chọn
Creat
T¹o 2 Shape míi
Luu
Format
Khoi phuc
Beep
• Private Sub CommandButton1_Click()
• For i = 1 To 3
• Beep
• Next
• End Sub
Ph¸t 3 tiÕng bÝp
Đối tượng AnimationSettings
Đối tượng SlideShowTransition
Thuộc tính SoundEffect
T¹o Slide míi, thiÕt lËp SoundEffect cho SlideShowTransition
Thay đổi tiêu đề ứng dụng
Vidu01
Lấy các thông số về cửa sổ
Vidu02
Đọc tệp
C:\Presentations TracNghiem1.txt
Read Line
CommandButton1
Gi¶i ph−¬ng tr×nh bËc hai
Gi¸o viªn : Lª V¨n Huúnh
Tr−êng :THBC KTTH Hµ Néi-ESTIH
ThuËt to¸n
Em giải phương trình
Phương trình bậc 2 có dạng tổng quát như sau:
ax2 + bx + c = 0
trong đó:
a, b, c là các hệ số cho trước. a ≠ 0.
x là nghiệm cần tìm.
Cách giải :
Bước 1 : Tính định thức ∆ :
∆ = b2 – 4ac
Bước 2 : Nếu ∆ < 0 : Phương trình vô nghiệm.
Tới Bước 5
Bước 3 : Nếu ∆ = 0 : Phương trình có nghiệm kép
x1 = x2 = -b/2/a
Tới Bước 5
Bước 4 :
Bước 5 : Kết thúc
a
bx
a
bx
2
,
2 21
∆−−=∆+−=
02 =++ cbxax
a=
b=
c=
∆=
x1=
x2=
8
1
4
2
PH¦¥NG TR×NH Cã HAI NGHIÖM THùC PH¢N BIÖT
x1 = -0.585786437626905
x2 = -3.41421356237309
Trắc nghiệm đơn giản
1. Tạo một trình diễn mới
2. Tạo Slide giới thiệu
3. Áp đặt thiết kế mẫu (Format\Slide Design…)
4. Mở View\Master, chọn Slide Master
5. Chọn TitleMaster
6. Vẽ một shape hình mũi tên ở góc phải phía dưới
7. Copy mũi tên đó. Chọn SlideMaster.
8. Paste mũi tên đó vào SlideMaster
9. Tạo một nhãn (Label)
1. Đặt tên nhãn là lbResult. Xóa bỏ Caption
2. Đặt BackStyle là 0-fmBackStyleTransparent
3. Đặt Font là .VnArial, cỡ chữ 28
4. Đặt Visible là False
10.Chọn Close Master View
Sửa thiết kế mẫu
Giao diện
1. Tạo slide mới
2. Viết một câu hỏi trắc nghiệm
3. Viết 4 phương án trả lời (văn bản,đồ
họa…)
4. Vào Visual Basic Editor
5. Thêm module
Viết mã
Sub Dung()
SlideMaster.txtResult.Caption = "§óNG"
SlideMaster.txtResult.Visible = True
End Sub
Sub Sai()
SlideMaster.txtResult.Caption = "SAI"
SlideMaster.txtResult.Visible = True
End Sub
Sub Hide()
SlideMaster.txtResult.Visible = False
ActivePresentation.SlideShowWindow.View.Next
End Sub
Áp đặt Actions Settings
1. Quay lại PowerPoint
2. Chọn phương án đúng
3. Chọn Slide Show\Action Settings…
4. Chọn Run Macro
5. Chọn Macro Dung
6. Chọn lần lượt các phương án sai
7. Chọn Slide Show\Action Settings…
8. Chọn Run Macro
9. Chọn Macro Sai
1. Mở View\SlideMaster
2. Vào TitleMaster
3. Chọn mũi tên
4. Chọn Slide Show\Action Settings…
5. Chọn Run Macro
6. Chọn Macro Hide
7. Vào SlideMaster
8. Chọn mũi tên
9. Chọn Slide Show\Action Settings…
10.Chọn Run Macro
11.Chọn Macro Hide
Chạy thử
• Chạy SlideShow
• Click vào mũi tên
• Chọn phương án trả lời
Trắc nghiệm
Gà có mấy chân?
2
3
Xáo trộn bộ đề trắc nghiệm
Đặt vấn đề
Từ một bộ đề trắc nghiệm, có đáp án, xây
dựng một macro cho phép tạo ra một bộ đề
mới bằng cách xáo trộn ngẫu nhiên bộ đề đã
có, kèm theo phiếu làm bài và phiếu chấm
điểm.
Bộ đề gốc trình bày trong bảng, có 2 cột. Cột
một là các câu hỏi và phương án trả lời, mỗi
câu ghi trong 1 ô. Cột 2 là các phương án
đúng.
Thực hiện
1. Chép bộ đề và đáp án sang một trang mới
2. Chèn thêm cột thứ 3
3. Ghi vào mỗi ô cột thứ 3 một số ngẫu nhiên
4. Sắp xếp lại bảng theo cột thứ 3
5. Xóa cột thứ 3
6. Ghi nhớ cột thứ 2 (đáp án)
7. Xóa cột thứ 2
Tạo phiếu trả lời
1. Tạo bảng có số hàng là số câu hỏi, số
cột là số phương án trả lới.
2. Ghi vào các ô tiêu đề cột các ký hiệu
A, B, C, D
3. Ghi vào các ô tiêu đề hàng cac số thứ
tự câu hỏi
4. Trong mỗi ô ghi một dấu tròn trắng {
Tạo phiếu chấm điểm
1. Tạo bảng có số hàng là số câu hỏi, số cột là
số phương án trả lới.
2. Ghi vào các ô tiêu đề cột các ký hiệu A, B,
C, D
3. Ghi vào các ô tiêu đề hàng cac số thứ tự
câu hỏi
4. Trong ô có phương án đúng thì ghi một dấu
tròn đen z
5. Trong ô có phương án sai thì ghi một dấu
tròn trắng {
Các file đính kèm theo tài liệu này:
- VBA_cho_PPT.pdf