Thủ Thuật
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO
No Result
View All Result
Thủ Thuật
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO
No Result
View All Result
Thủ Thuật
No Result
View All Result
Home Chia Sẻ Kiến Thức Học Power Point

Sao chép Dữ liệu Excel sang Nhiều Slide PowerPoint bằng VBA

Sao chép Dữ liệu Excel sang Nhiều Slide PowerPoint bằng VBA
6k
SHARES
19.5k
VIEWS
Share on Facebook

Nội Dung Bài Viết

Toggle
  • Tận Dụng Lợi Thế của Mảng
  • Lọc và Duyệt Qua Mảng
  • Căn chỉnh Hình ảnh vào Giữa Slide

VBA (Visual Basic for Applications) là một công cụ mạnh mẽ giúp tự động hóa các tác vụ trong Microsoft Office, bao gồm việc sao chép dữ liệu giữa Excel và PowerPoint. Bài viết này hướng dẫn bạn cách sử dụng VBA để sao chép dải ô từ Excel và dán vào nhiều slide PowerPoint khác nhau, giúp tiết kiệm thời gian và công sức.

Minh họa sao chép dữ liệu Excel sang PowerPoint bằng VBAMinh họa sao chép dữ liệu Excel sang PowerPoint bằng VBA

Đoạn mã VBA dưới đây sẽ thực hiện việc này:

Sub PasteMultipleSlides()

Dim myPresentation As Object
Dim mySlide As Object
Dim PowerPointApp As Object
Dim shp As Object
Dim MySlideArray As Variant
Dim MyRangeArray As Variant
Dim x As Long

'Tạo một phiên bản PowerPoint
On Error Resume Next

'Kiểm tra xem PowerPoint đã mở chưa?
Set PowerPointApp = GetObject(class:="PowerPoint.Application")

'Xóa lỗi
Err.Clear

'Nếu PowerPoint chưa mở thì thoát
If PowerPointApp Is Nothing Then
    MsgBox "PowerPoint chưa được mở, đang thoát."
    Exit Sub
End If

'Xử lý nếu không tìm thấy ứng dụng PowerPoint
If Err.Number = 429 Then
    MsgBox "Không tìm thấy PowerPoint, đang thoát."
    Exit Sub
End If

On Error GoTo 0

'Hiển thị và kích hoạt PowerPoint
PowerPointApp.ActiveWindow.Panes(2).Activate

'Tạo một bài thuyết trình mới
Set myPresentation = PowerPointApp.ActivePresentation

![Tạo bài thuyết trình PowerPoint](http://thuthuat.com.vn/wp-content/uploads/2025/04/VBA101_92019-nho.gif)


'Danh sách các slide PowerPoint cần dán vào
MySlideArray = Array(2, 3, 4, 5, 6)

'Danh sách các dải ô Excel cần sao chép
MyRangeArray = Array(Sheet1.Range("A1:C10"), Sheet4.Range("A1:C10"), _
Sheet3.Range("A1:C10"), Sheet2.Range("A1:C10"), Sheet5.Range("A1:C10"))

'Vòng lặp qua dữ liệu mảng
For x = LBound(MySlideArray) To UBound(MySlideArray)
    'Sao chép dải ô Excel
    MyRangeArray(x).Copy

    'Dán vào PowerPoint và định vị
    On Error Resume Next
    Set shp = myPresentation.Slides(MySlideArray(x)).Shapes.PasteSpecial(DataType:=2) 'Excel 2007-2010
    Set shp = PowerPointApp.ActiveWindow.Selection.ShapeRange 'Excel 2013
    On Error GoTo 0

    'Căn giữa đối tượng
    With myPresentation.PageSetup
        shp.Left = (.SlideWidth  2) - (shp.Width  2)
        shp.Top = (.SlideHeight  2) - (shp.Height  2)
    End With

Next x

'Hoàn tất chuyển dữ liệu
Application.CutCopyMode = False
ThisWorkbook.Activate
MsgBox "Hoàn tất!"

End Sub

Tận Dụng Lợi Thế của Mảng

'Danh sách các slide PowerPoint cần dán vào
MySlideArray = Array(2, 3, 4, 5, 6)

'Danh sách các dải ô Excel cần sao chép
MyRangeArray = Array(Sheet1.Range("A1:C10"), Sheet4.Range("A1:C10"), _
Sheet3.Range("A1:C10"), Sheet2.Range("A1:C10"), Sheet5.Range("A1:C10"))

Mảng một chiều được sử dụng như danh sách, rất hiệu quả trong việc tự động hóa tác vụ sao chép và dán dữ liệu. Mã lệnh trên sử dụng hai mảng: một mảng chứa dải ô Excel cần sao chép và mảng kia chứa số thứ tự slide PowerPoint cần dán. Việc sử dụng mảng giúp linh hoạt trong việc chọn dữ liệu từ nhiều sheet khác nhau.

Xem thêm:  Đồng Hồ Đếm Ngược trong PowerPoint: Hướng Dẫn Chi Tiết

Lọc và Duyệt Qua Mảng

'Vòng lặp qua dữ liệu mảng
For x = LBound(MySlideArray) To UBound(MySlideArray)
    'Sao chép dải ô Excel
    MyRangeArray(x).Copy

    'Dán vào PowerPoint và định vị
    '[...]
Next x

Đoạn mã này duyệt qua từng phần tử của mảng. Hàm LBound và UBound đảm bảo vòng lặp chạy đúng số lần, bất kể số lượng phần tử trong mảng. Tính năng này rất hữu ích khi cần thay đổi số lượng dải ô hoặc slide mà không cần sửa đổi mã.

Lưu ý về xử lý lỗi khi thiết lập biến shp: Với Excel 2007 và 2010, biến shp được thiết lập cùng dòng với lệnh PasteSpecial. Tuy nhiên, Excel 2013 yêu cầu thiết lập biến ShapeRange. Để tương thích với cả hai phiên bản, chạy cả hai lệnh và bỏ qua thông báo lỗi.

Căn chỉnh Hình ảnh vào Giữa Slide

'Căn giữa đối tượng
With myPresentation.PageSetup
    shp.Left = (.SlideWidth  2) - (shp.Width  2)
    shp.Top = (.SlideHeight  2) - (shp.Height  2)
End With

Đoạn mã này căn giữa hình ảnh trên slide PowerPoint. Bạn có thể tùy chỉnh vị trí bằng cách thay đổi thuộc tính Left, Top, Height và Width của đối tượng shp. Nhớ mở khóa tỉ lệ khung ảnh trước khi thay đổi kích thước.

Kết luận, VBA cung cấp giải pháp hiệu quả để tự động hóa việc sao chép dữ liệu Excel sang nhiều slide PowerPoint. Mã lệnh trên dễ hiểu và tùy chỉnh, giúp bạn tiết kiệm thời gian và nâng cao năng suất làm việc. Hãy khám phá thêm các tính năng của VBA để tối ưu hóa công việc với Microsoft Office.

Đánh Giá Bài Viết
Tuyết Nhi

Tuyết Nhi

Tôi là Tuyết Nhi - Nữ phóng viên trẻ đến từ Hà Nội. Với niềm đam mê công nghệ, khoa học kỹ thuật, tôi yêu thích và muốn chia sẻ đến mọi người những trải nghiệm, kinh nghiệm về các lĩnh vực công nghệ, kỹ thuật... Rất mong được quý độc giả đón nhận ❤️.

Related Posts

Thay Đổi Font Chữ Hàng Loạt trong PowerPoint với VBA
Học Power Point

Thay Đổi Font Chữ Hàng Loạt trong PowerPoint với VBA

Chuyển đổi file PowerPoint cũ sang phiên bản mới (2013 trở lên)
Học Power Point

Chuyển đổi file PowerPoint cũ sang phiên bản mới (2013 trở lên)

Thủ Thuật PowerPoint: Bí Kíp Phím Tắt Ít Người Biết
Học Power Point

Thủ Thuật PowerPoint: Bí Kíp Phím Tắt Ít Người Biết

Lọc Dữ Liệu Excel Trực Tiếp Trong PowerPoint Với VBA
Học Power Point

Lọc Dữ Liệu Excel Trực Tiếp Trong PowerPoint Với VBA

Discussion about this post

Trending.

Hướng Dẫn Hack Blox Fruits Trên Điện Thoại Và Máy Tính Mới Nhất 2025

Hướng Dẫn Hack Blox Fruits Trên Điện Thoại Và Máy Tính Mới Nhất 2025

Khám Phá Thế Giới Học Đường Trong School Party Craft MOD APK

Khám Phá Thế Giới Học Đường Trong School Party Craft MOD APK

Tải Minecraft PE Miễn Phí Cho Android và iOS Mới Nhất

Tải Minecraft PE Miễn Phí Cho Android và iOS Mới Nhất

Tải và Cài Đặt Phần Mềm Thiết Kế Thời Trang Lectra Modaris v7r2

Tải và Cài Đặt Phần Mềm Thiết Kế Thời Trang Lectra Modaris v7r2

Chuyển Đổi File PDF Sang CAD: Hướng Dẫn Chi Tiết

Chuyển Đổi File PDF Sang CAD: Hướng Dẫn Chi Tiết

Giới Thiệu

Thủ Thuật

➤ Website đang trong quá trình thử nghiệm AI biên tập, mọi nội dung trên website chúng tôi không chịu trách nhiệm. Bạn hãy cân nhắc thêm khi tham khảo bài viết, xin cảm ơn!

Chuyên Mục

➤ TOP Thủ Thuật

➤ Chia Sẻ Kiến Thức

➤ Kênh Công Nghệ

➤ SEO

➤ Games

Liên Kết

➤ Ketquaxskt.com

➤

➤

➤

➤

Liên Hệ

➤ TP. Hải Phòng, Việt Nam

➤ 0931. 910. JQK

➤ Email: [email protected]

Website này cũng cần quảng cáo, không có tiền thì viết bài làm sao  ” Đen Vâu – MTP ”

DMCA.com Protection Status

© 2025 Thủ Thuật - Website chia sẻ kiến thức công nghệ hàng đầu Việt Nam

No Result
View All Result
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO

© 2025 Thủ Thuật - Website chia sẻ kiến thức công nghệ hàng đầu Việt Nam