Chuyển đổi sang chữ hoa đúng trong Excel VBA
Dưới đây chúng ta sẽ xem xét một chương trình trong Excel VBA có chức năng chuyển đổi văn bản thành dạng chữ thích hợp. Đó là, chữ cái đầu tiên trong mỗi từ viết hoa và tất cả các chữ cái khác ở dạng viết thường.
Tình huống:
-
Đầu tiên, chúng ta khai báo hai đối tượng Range. Chúng tôi gọi các đối tượng Range là rng và ô.
Dim rng As Range, cell As Range
-
Chúng ta khởi tạo đối tượng Range rng với phạm vi đã chọn.
Set rng = Selection
-
Chúng tôi muốn kiểm tra từng ô trong một phạm vi được chọn ngẫu nhiên (phạm vi này có thể có kích thước bất kỳ). Trong Excel VBA, bạn có thể sử dụng vòng lặp Cho Mỗi Tiếp theo cho việc này. Thêm các dòng mã sau:
For Each cell In rng Next cell
Lưu ý: rng và ô được chọn ngẫu nhiên ở đây, bạn có thể sử dụng bất kỳ tên nào.
Hãy nhớ tham khảo những tên này trong phần còn lại của mã của bạn.
-
Để bỏ qua ô có chứa công thức, hãy thêm dòng mã sau vào giữa For Each và Next (chỉ khi ô.HasFormula là false, chúng tôi tiếp tục).
If Not cell.HasFormula Then End If
-
Tiếp theo, chúng tôi muốn chuyển đổi từng từ trong phạm vi này thành ‘trường hợp thích hợp’.
Bạn có thể sử dụng hàm trang tính Thích hợp cho tác vụ này. Thêm dòng mã sau vào câu lệnh if của bạn.
cell.Value = WorksheetFunction.Proper(cell.Value)
-
Chạy thử chương trình.
Kết quả: