Bài viết này sẽ trình bày cách sử dụng VBA để sao chép một dải ô sang một trang tính hoặc sổ làm việc khác.
Để biết thêm thông tin, hãy đọc Hướng dẫn sao chép và dán VBA của chúng tôi.
Sao chép vào Trang tính Hiện có
Để sao chép một dải ô từ một trang tính sang một trang tính khác đã tồn tại, chúng ta có thể sử dụng mã sau:
123456 | Sub CopyAndPasteActiveSheet.Range ("A1: D10"). ChọnLựa chọn. Sao chépTrang tính ("Trang tính2"). ChọnActiveSheet.PasteKết thúc Sub |
Thao tác này sẽ sao chép thông tin được lưu trữ trong phạm vi trang tính hiện hoạt A1: D10 và dán vào Trang tính 2 hiện có. Vì chúng tôi chưa chỉ định phạm vi để chọn trong Trang tính 2, nó sẽ tự động dán vào Phạm vi (“A1”). Nó cũng sẽ dán bất kỳ định dạng nào vào Trang tính 2 nằm trong phạm vi trong Trang tính 1.
Nếu chúng ta muốn dán nó vào một vị trí khác trong Trang tính 2, chúng ta có thể chọn ô hoặc dải ô bắt đầu để dán vào. Đoạn mã dưới đây sẽ dán thông tin bắt đầu vào ô E2.
1234567 | Sub CopyAndPasteToRangeActiveSheet.Range ("A1: D10"). ChọnLựa chọn. Sao chépTrang tính ("Trang tính2"). ChọnPhạm vi ("E1"). ChọnActiveSheet.PasteKết thúc Sub |
Để chỉ dán các giá trị vào Trang tính 2 và không bao gồm định dạng, chúng ta có thể sử dụng mã sau. Một lần nữa, chúng tôi không phải chỉ định phạm vi đến trang nếu chúng tôi muốn dán vào ô A1.
123456 | Sub CopyAndPasteValuesActiveSheet.Range ("A1: D10"). ChọnLựa chọn. Sao chépTrang tính ("Trang tính2"). ChọnSelection.PasteSpecial Paste: = xlPasteValuesKết thúc Sub |
Sao chép sang trang tính mới
Để sao chép và sau đó dán vào một trang tính mới, chúng ta có thể sử dụng mã sau:
123456 | Sub CopyAndPasteNewSheetActiveSheet.Range ("A1: D10"). ChọnLựa chọn. Sao chépSheets.Add After: = ActiveSheetActiveSheet.PasteKết thúc Sub |
Để chỉ sao chép các giá trị, một lần nữa chúng ta có thể sử dụng xlPasteValues.
Sao chép vào Sổ làm việc Hiện có
Để sao chép và dán hoàn toàn vào một sổ làm việc khác, chúng ta có thể mở cả hai sổ làm việc hoặc chúng ta có thể sử dụng mã để mở một sổ làm việc khác, rồi dán vào sổ làm việc đó.
Mã này dưới đây sao chép vào một sổ làm việc hiện có đã được mở.
1234567 | Sub CopyAndPasteExistingBookPhạm vi ("A1: D10"). ChọnLựa chọn. Sao chépWindows ("Combine.xlsx"). Kích hoạtSheets.Add After: = ActiveSheetActiveSheet.PasteKết thúc Sub |
Lập trình VBA | Code Generator làm việc cho bạn!
Mã dưới đây sẽ sao chép và dán vào trang tính mới trong sổ làm việc thứ hai sẽ được mở bằng mã.
1234567 | Sub CopyAndPasteOpenWorkbookPhạm vi ("A1: D9"). ChọnLựa chọn. Sao chépWorkbooks.Open Filename: = "C: \ ExcelFiles \ CombineBraffs.xlsx"Sheets.Add After: = ActiveSheetActiveSheet.PasteTrang cuối |
MẸO: thay thế tên của tệp trong đối số Workbooks.Open bằng tên tệp của riêng bạn!
Sao chép sang Sổ làm việc Mới
Chúng tôi cũng có thể Sao chép và Dán vào Sổ làm việc mới.
123456 | Sub CopyAndPasteNewWorkbookPhạm vi ("A1: D9"). ChọnLựa chọn. Sao chépWorkbooks.AddActiveSheet.PasteKết thúc Sub |