Huỳnh hoài bảo
Huỳnh hoài bảo
Thảo luận 3 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 210 lượt xem

Thầy cho hỏi khi tạo useform nhập liệu; nếu mã sản phẩm là số mà

Thầy cho hỏi khi tạo useform nhập liệu; nếu mã sản phẩm là số mà số đầu là 0 ví dụ 0027 thì khi map vào sheet thì Excel sẽ bỏ mất số 0; làm thế nào để tránh sự cố này - Cám ơn thầy

Thảo luận 3 câu trả lời
Lượt xem 210 lượt xem
Vỗ tay vỗ tay
Huỳnh hoài bảo 09:12 - Dec 14, 2020

Đúng như bạn nói, việc nhập số 0 ở trước sẽ gây ra lỗi. Việc này về bản chất được hiểu như sau:

- Nếu ở dữ liệu kiểu Text (trong VBA là string) thì số 0 ở trước sẽ vẫn được tính là 1 ký tự.

- Nếu dữ liệu kiểu Number (trong VBA là long, integer, single, double...) thì số 0 ở trước sẽ bị loại bỏ.

Do vậy bạn có thể giải quyết theo cách: khi đưa vào Sheet Excel sẽ ở dạng text:

ví dụ: Sheet1.Range("A1").Value = "'" & Me.Textbox1.Value

Phần phía trước dấu & là ký tự dấu nháy đơn, khi viết trong cú pháp thì dấu này phải đặt trong cặp dấu nháy kép:

"'" = Dấu nháy kép + dấu nháy đơn + dấu nháy kép 

Tuy nhiên khi đặt mã sản phẩm không nên chỉ toàn ký tự số, mà nên có 1 ký tự text. Mã phải luôn là text để đảm bảo không bị nhầm lẫn khi xử lý (number thường tự động hiểu là bỏ số 0 ở trước)

Vỗ tay vỗ tay
Huỳnh hoài bảo 16:12 - Dec 14, 2020

vâng cám ơn thầy 

Vỗ tay vỗ tay
Huỳnh hoài bảo 16:12 - Dec 14, 2020

Chúc bạn học tốt cùng Gitiho!

Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông