Sử dụng máy ảnh trong VBA (Microsoft Excel)
Trong các số báo khác của ExcelTips, bạn tìm hiểu về cách sử dụng công cụ Máy ảnh để chụp ảnh động của các phần khác nhau trong trang tính của mình. Bạn có thể đã tự hỏi làm thế nào để sử dụng cùng một loại tính năng từ bên trong VBA.
Tài liệu về vấn đề này không rõ ràng lắm, nhưng macro sau đây cho thấy quy trình chung:
Sub DoCamera() Dim MyPrompt As String Dim MyTitle As String Dim UserRange As Range Dim OutputRange As Range Application.ScreenUpdating = True 'Prompt user for range to capture MyPrompt = "Select the range you would like to capture." MyTitle = "User Input Required" On Error Resume Next Set UserRange = Application.InputBox(Prompt:=MyPrompt, _ Title:=MyTitle, Default:=ActiveCell.Address, Type:=8) If UserRange Is Nothing Then End On Error GoTo 0 'Copy range to Clipboard as picture UserRange.CopyPicture 'Prompt user for range to paste to MyPrompt = "Select the range on which you would like to paste." MyTitle = "User Input Required" On Error Resume Next Set OutputRange = Application.InputBox(Prompt:=MyPrompt, _ Title:=MyTitle, Default:=ActiveCell.Address, Type:=8) If OutputRange Is Nothing Then End On Error GoTo 0 'Paste picture to output range OutputRange.PasteSpecial Selection.Formula = UserRange.Address End Sub
Macro này sẽ nhắc bạn chỉ định một phạm vi sẽ được sao chép, sau đó nó sẽ sao chép nó vào Clipboard dưới dạng ảnh và nhắc bạn về vị trí dán nó.
Khi được dán, dòng cuối cùng của macro là chìa khóa để làm cho “bức ảnh” động, giống như được thực hiện thủ công với công cụ Máy ảnh. Lệnh PasteSpecial thực sự dán ảnh và ảnh đã dán vẫn được chọn. Đặt thuộc tính Công thức cho vùng chọn (hình ảnh) dẫn đến tính chất động của đồ họa.
_Lưu ý: _
Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (2207) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: