Video: Excel - VBA. Tự động thực hiện các lệnh trong Excel | Hanh Le 2025
Bạn có thể sử dụng hàm InputBox để thêm hộp thoại vào macro Excel 2013 của bạn. Khi bạn chạy macro, hàm Visual Basic này làm cho Excel hiển thị một hộp thoại Input, nơi bạn có thể nhập tiêu đề bất cứ điều gì có ý nghĩa cho các bảng tính mới. Sau đó vĩ mô đặt văn bản đó vào ô hiện tại và định dạng văn bản này, nếu đó là những gì bạn đã đào tạo vĩ mô của mình để làm tiếp.
Để xem cách dễ dàng sử dụng chức năng InputBox để thêm tính tương tác vào một macro khác, hãy làm theo các bước để chuyển đổi macro Company_Name hiện đang nhập văn bản "Mind Over Media" vào một trong đó thực sự nhắc nhở bạn về tên mà bạn muốn nhập. Hàm InputBox sử dụng cú pháp sau:
InputBox (dấu nhắc [title] [mặc định] [xpos] [ypos] [helpfile, context])
Trong chức năng này, chỉ có dấu nhắc > được yêu cầu với phần còn lại của các đối số là tùy chọn. Đối số nhắc chỉ định thông báo xuất hiện bên trong hộp thoại Đầu vào, nhắc người dùng nhập một giá trị mới (hoặc trong trường hợp này, tên công ty mới). Đối số
nhắc có thể tối đa là 1, 024 ký tự. Nếu bạn muốn thông báo nhắc nhở xuất hiện trên các dòng khác nhau bên trong hộp thoại, bạn nhập các hàm Chr (13) và Chr (10) vào văn bản (để chèn một vận chuyển trở lại và một dòng thẳng trong tin nhắn, tương ứng).
Đối số tùy chọntitle tùy chọn sẽ chỉ định văn bản nào hiển thị trong thanh tiêu đề của hộp thoại Input. Nếu bạn không chỉ định một đối số title , Excel sẽ hiển thị tên của ứng dụng trên thanh tiêu đề. Đối số mặc định mặc định tùy chọn chỉ định phản hồi mặc định tự động xuất hiện trong hộp văn bản ở cuối hộp thoại Nhập. Nếu bạn không chỉ định đối số mặc định, hộp văn bản sẽ trống trong hộp thoại Nhập.
xpos
vàypos chỉ định khoảng cách ngang từ cạnh trái của màn hình sang cạnh trái của hộp thoại và khoảng cách theo chiều dọc từ mép trên của màn hình đến cạnh trên cùng của hộp thoại. Nếu bạn không chỉ định các đối số này, Excel sẽ tập trung vào hộp thoại đầu vào theo chiều ngang và định vị nó khoảng một phần ba chiều xuống màn hình theo chiều dọc. helpfile và
ngữ cảnh đối số tùy chọn chỉ định tên của tệp trợ giúp tuỳ chỉnh mà bạn cung cấp cho người dùng để giải thích hoạt động của hộp thoại Nhập cũng như kiểu dữ liệu mà nó chấp nhận. Là một phần của quá trình tạo tệp trợ giúp tùy chỉnh để sử dụng trong hệ thống Trợ giúp Excel, bạn chỉ định chủ đề một số ngữ cảnh phù hợp với nội dung của nó, sau đó được xác định là đối số ngữ cảnh cho InputBox chức năng.
Khi bạn chỉ định tệp trợ giúp và đối số ngữ cảnh cho hàm này, Excel sẽ thêm nút Trợ giúp vào hộp thoại Nhập tùy chỉnh để người dùng có thể nhấp vào để truy cập tệp trợ giúp tuỳ chỉnh trong cửa sổ Trợ giúp.
Trước khi bạn có thể thêm dòng mã vào vĩ mô với chức năng InputBox, bạn cần phải tìm vị trí trong các lệnh Visual Basic nơi dòng nên đi. Để nhập văn bản Mind Over Media vào ô hoạt động, macro Company_Name sử dụng lệnh Visual Basic sau: ActiveCell. FormulaR1C1 = "Mind Over Media" Để thêm tương tác vào macro, bạn cần phải chèn InputBox vào một dòng trong cửa sổ Code ngay phía trên ActiveCell này. FormulaR1C1, như sau:
Vị trí điểm chèn trong cửa sổ mã ở đầu ActiveCell. FormulaR1C1 và nhấn Enter để chèn một dòng mới.
Bây giờ bạn đã thêm một dòng mới, bạn cần phải di chuyển điểm chèn lên nó.
Nhấn phím mũi tên lên để định vị điểm chèn vào đầu dòng mới.
-
Trên dòng này, bạn muốn tạo một biến cung cấp đối số
prompt
-
cho hàm InputBox. Để làm điều này, bạn phải ghi tên của biến (InputMsg trong trường hợp này) theo sau là mục hiện tại của nó. Đảm bảo đính kèm văn bản thông báo ở phía bên phải của dấu bằng trong một cặp ngoặc kép đóng.
Nhập mã sau đây để tạo ra biến InputMsg trên dòng 8 và sau đó nhấn phím Enter để bắt đầu một dòng mới 9: InputMsg = "Nhập tên công ty hoặc tiêu đề của bảng tính này trong hộp văn bản bên dưới và sau đó nhấn OK: " Tiếp theo, bạn tạo một biến có tên là InputTitle cung cấp đối số
-
title
tùy chọn cho InputBox. Biến này làm cho văn bản "Tiêu đề bảng tính" xuất hiện dưới dạng tiêu đề của hộp thoại Nhập. Một lần nữa, hãy chắc chắn để kèm theo tên cho thanh tiêu đề hộp thoại trong dấu ngoặc kép.
Nhập mã sau đây để tạo biến InputTitle trên dòng 9 và sau đó nhấn Enter để chèn dòng mới 10: InputTitle = "Tiêu đề bảng tính" Tiếp theo, bạn tạo một tên biến DefaultText có cung cấp tuỳ chọn
-
mặc định
đối số cho các InputBox chức năng. Biến này làm cho văn bản "Mind Over Media" xuất hiện dưới dạng mục nhập mặc định trên hộp văn bản ở cuối hộp thoại Nhập Tên Công ty tùy chỉnh.
Nhập mã sau để tạo biến DefaultText trên dòng 10 và sau đó nhấn Enter để chèn một dòng mới 11: DefaultText = "Mind Over Media" Tiếp theo, bạn tạo một biến cuối cùng có tên CompanyName xác định các InputBox chức năng như là mục nhập của nó (sử dụng InputMsg, InputTitle, và DefaultText biến mà bạn vừa tạo ra) và lưu kết quả của chức năng này.
-
Nhập mã sau để tạo ra biến SpreadsheetTitle sử dụng hàm InputBox trên dòng 11:
SpreadsheetTitle = InputBox (InputMsg, InputTitle, DefaultText)
Cuối cùng, bạn thay thế giá trị, "Mind Over Media" trong ActiveCell.Thuộc tính FormulaR1C1 với biến SpreadsheetTitle (có giá trị được xác định bởi bất cứ điều gì được nhập vào hộp thoại Nhập bảng tính bảng), do đó thay thế hiệu quả hằng số này trong vĩ mô với các phương tiện để làm cho đầu vào này thực sự tương tác.
-
Chọn "Mind Over Media" ở dòng 12 và thay nó bằng SpreadsheetTitle (không có dấu ngoặc kép).
Lưu macro đã chỉnh sửa bằng cách nhấp vào nút Lưu trên thanh công cụ Visual Basic và sau đó trở lại trang tính bằng cách nhấp vào nút Xem Microsoft Excel hoặc nhấn Alt + F11. Sau đó, nhấp vào nút Ẩn trong nhóm Cửa sổ của tab VIEW.
Bây giờ, bạn đã sẵn sàng để mở một bảng tính mới và chạy macro đã chỉnh sửa bằng cách nhấn Ctrl + N.
-
Hình vẽ cửa sổ mã với macro Company_Name đã chỉnh sửa sau khi thêm các câu lệnh làm cho nó trở nên tương tác.
-
Hình dưới đây cho thấy hộp thoại Tiêu đề Bảng tính đang hoạt động trong bảng tính. Hộp thoại đầu vào này bây giờ tự động xuất hiện và nhắc bạn nhập dữ liệu bất cứ khi nào bạn chạy phiên bản đã được chỉnh sửa và bây giờ hoàn toàn tương tác của vĩ mô Company_Name.
Để đi tiếp và nhập Mind Over Media vào ô hiện tại và sau đó định dạng nó bằng cách sử dụng các lệnh macro khác, bạn chỉ cần nhấp vào OK trong hộp thoại tùy chỉnh này. Để nhập và định dạng tên của công ty khác, bạn chỉ cần gõ tên của công ty (sẽ tự động thay thế Mind Over Media trong hộp văn bản) trước khi bạn nhấn OK.