Triệu chứng
Khi bạn chạy macro Microsoft Excel hoặc mã lập trình khác đặt quy tắc xác thực dữ liệu cho một ô dưới dạng danh sách các mục nhập hợp lệ, tất cả các mục trong danh sách xác thực dữ liệu trên ô xuất hiện trên một dòng.
Nguyên nhân
Hành vi này xảy ra khi các điều kiện sau đây là đúng:
-
Thiết đặt dấu tách danh sách (dưới tùy chọn vùng trong Pa-nen điều khiển) là một cái gì đó khác với dấu phẩy (,). Ví dụ, nếu thiết đặt bản địa của bạn là Đức, dấu tách danh sách của bạn là dấu chấm phẩy.
-
Macro để xác thực dữ liệu sử dụng dấu tách danh sách để xác định các mục nhập ô hợp lệ.
-
Mã macro xác định danh sách một cách rõ ràng, thay vì trỏ đến phạm vi ô mà các mục nhập hợp lệ được liệt kê.
Cách giải quyết
Khi bạn tạo macro để chỉ định một danh sách các mục nhập hợp lệ cụ thể, luôn luôn sử dụng dấu phẩy (,) làm dấu tách danh sách của bạn.
Thông tin Bổ sung
Trong Excel, Microsoft Visual Basic for Applications luôn sử dụng dấu phẩy là dấu tách danh sách. Điều này cho phép bạn chạy macro trên các máy tính có các thiết đặt bản địa khác nhau, mà không cần phải sửa mã của bạn. Khi đi qua một mảng được phân tách bằng dấu phẩy bằng VBA (XLValidateList formula1) để xác thực dữ liệu một hạn chế ký tự 255 được áp dụng. Khi bạn chạy macro sử dụng dấu tách danh sách để thay đổi thiết đặt, macro sẽ chuyển đổi dấu phẩy sang dấu tách danh sách khu vực cục bộ. Ví dụ: điều này xảy ra nếu macro tạo ra một danh sách xác thực dữ liệu hoặc vào một công thức trong một ô bằng cách sử dụng lệnh phạm vi. công thức (number1,number2) .
Tham khảo
Để biết thêm thông tin về xác thực dữ liệu trong Excel, hãy bấm số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
211485 Mô tả và ví dụ về xác thực dữ liệu trong Excel