Tạo sổ làm việc mới bằng VBA trong Microsoft Excel
Có thể có những trường hợp bạn cần tạo một sổ làm việc mới với một số trang nhất định thông qua mã vba hoặc macro. Đây là một macro đơn giản cho phép bạn tạo một sổ làm việc mới> mở và sau đó lưu với tối đa 255 trang tính mới. Trong macro mẫu này, chúng tôi sẽ tạo một sổ làm việc mới với 10 trang tính.
Option Explicit _Sub create_workbook ()
Dim wb As Workbook Set wb = NewWorkbook (10)
End Sub_ Function NewWorkbook (wsCount As Integer) As Workbook Dim OriginalWorksheetCount As Long Set NewWorkbook = Nothing If wsCount <1 Hoặc wsCount> 255 Sau đó thoát khỏi chức năng OriginalWorksheetCount = Application.SheetsInNewWorkbook Application.SheetsInNewWorkbook = wsCount Set NewWorkbook = WorkbooksIn ứng dụng. OriginalWorksheetCount End Function Code Giải thích:
Đầu tiên, chúng ta có một thủ tục được gọi là “create_workbook”. Trong thủ tục này, chúng ta có một biến wb là sổ làm việc và chúng ta gọi hàm NewWorkbook thông qua biến này. Vì vậy, hàm mới được gọi và số lượngwscount được thiết lập là 10, là số lượng trang tính trong sổ làm việc mới.
Sau đó, chúng ta đi đến hàm được gọi là Function NewWorkbook (wsCount as Integer) là Workbook. Giá trị cho wsCount là 10 được truyền từ con create_workbook.
Set NewWorkbook = Nothing
Đầu tiên, NewWorkbook được đặt thành không để chúng tôi có thể xóa bất kỳ giá trị nào khác có thể được gán cho nó trong bất kỳ mã nào trước đó.
Nếu wsCount <1 hoặc wsCount> 255 thì Thoát khỏi Chức năng
Tiếp theo, chúng ta phải kiểm tra xem giá trị được truyền từ sub nhỏ hơn 1 hay lớn hơn 255. Nếu câu trả lời là có cho một trong hai cách kiểm tra này, thì hãy thoát khỏi hàm.
OriginalWorksheetCount = Application.SheetsInNewWorkbook
Có một tham số trong trang tùy chọn excel nơi đặt số lượng trang tính trong sổ làm việc mới. Chúng tôi chuyển giá trị này cho biến OriginalWorksheetCount . * Biến sẽ giữ số trang tính mặc định đã được thiết lập trước trong các tùy chọn excel.
Application.SheetsInNewWorkbook = wsCount
Sau đó, chúng tôi gán giá trị của wsCount được truyền từ tham số phụ đến tham số trong các tùy chọn excel cho số trang tính được đưa vào sổ làm việc mới. Vì vậy, bây giờ tham số này sẽ thay đổi từ giá trị cũ thành 10. Giá trị cũ có thể là 1 hoặc 3 hoặc bất kỳ số nào khác do người dùng đặt.
Set NewWorkbook = Workbooks.Add
Chúng tôi tạo một sổ làm việc mới được gán cho NewWorkbook. Sổ làm việc mới này được tạo với số trang tính được chỉ định trong wsCount. Bạn sẽ thấy một sổ làm việc mới với 10 trang tính có tiêu đề Sheet1 đến Sheet10. Xem ảnh bên dưới để biết tệp Book3 mới đã được tạo.
Hình dưới đây sẽ cho bạn thấy số trang tính đã được tạo trong sổ làm việc mới.
Ngoài ra, số 10 sẽ hiển thị trong tham số Application.SheetsInNewWorkbook trong Excel Options như trong hình dưới đây –
Application.SheetsInNewWorkbook = OriginalWorksheetCount TheApplication.SheetsInNewWorkbook được trả về số ban đầu của nó trước khi wsCount được đặt. Vì vậy, nếu số ban đầu là 1 hoặc 3, tham số này bây giờ sẽ trở lại số đó.
Nếu bạn thích blog của chúng tôi, hãy chia sẻ nó với bạn bè của bạn trên Facebook. Và bạn cũng có thể theo dõi chúng tôi trên Twitter và Facebook.
Chúng tôi rất muốn nghe ý kiến của bạn, hãy cho chúng tôi biết cách chúng tôi có thể cải thiện, bổ sung hoặc đổi mới công việc của mình và làm cho nó tốt hơn cho bạn. Viết thư cho chúng tôi tại