Trong bài "Sổ tay VBAER và Những điều cần biết" của levanduyet
Diễn đàn > Lập trình với Excel > Excel và các ngôn ngữ lập trình khác > Thư viện mã lập trình > Sổ tay VBAER và Những điều cần biết, có một tiết mục nói về "Chú ý khi dùng hoặc không dùng Option Base 1"
Bài này giải thích lý thuyết và lý do rất kỹ càng, cho nên tôi không cần lặp lại.
Ở đây, tôi chỉ góp ý thêm về trường hợp thực tiễn sử dụng lệnh Option Base
Theo cách làm việc thông thường, người ta mặc định Base 0 cho tất cả các code của mình. Lệnh Option Base 1 được dành riêng để import code từ nguồn khác nếu cần.
Ví dụ, bạn nhặt được một hàm (hay class module gì đó) rất hay và muốn sử dụng. Ngặt nổi code của hàm này dựa trên base 1. Bạn không muốn vào code chỉnh sửa, vừa mất thì giờ vừa dễ sai lầm. Giải pháp tốt nhất là import code này vào một module riêng, và đặt lệnh Option Base 1 ở đầu module này. Khi ấy, các module code khác của bạn vẫn dùng base 0 như mặc định, chỉ riêng code trong module mới import này mới sử dụng base 1.
Mẹo nhỏ: trên tinh thần này
1. trước khi copy một hàm hay đoạn code ở đâu đó, người ta luôn luôn đọc ở đầu module xem các Options được định ra sao và copy theo code.
2. người có kinh nghiệm thường đặt code copy vào module(s) riêng biệt với module(s) code của chính mình.
Lưu ý: những điều trên chỉ áp dụng cho VBAPjrject lớn, có nhiều code. Mấy cái project lặt vặt vài hàm thì cứ xem chúng không bị tréo nhau về options hay chạm tên thì gộp vào hết vào một nẻo cho dễ bảo trì.
Diễn đàn > Lập trình với Excel > Excel và các ngôn ngữ lập trình khác > Thư viện mã lập trình > Sổ tay VBAER và Những điều cần biết, có một tiết mục nói về "Chú ý khi dùng hoặc không dùng Option Base 1"
Bài này giải thích lý thuyết và lý do rất kỹ càng, cho nên tôi không cần lặp lại.
Ở đây, tôi chỉ góp ý thêm về trường hợp thực tiễn sử dụng lệnh Option Base
Theo cách làm việc thông thường, người ta mặc định Base 0 cho tất cả các code của mình. Lệnh Option Base 1 được dành riêng để import code từ nguồn khác nếu cần.
Ví dụ, bạn nhặt được một hàm (hay class module gì đó) rất hay và muốn sử dụng. Ngặt nổi code của hàm này dựa trên base 1. Bạn không muốn vào code chỉnh sửa, vừa mất thì giờ vừa dễ sai lầm. Giải pháp tốt nhất là import code này vào một module riêng, và đặt lệnh Option Base 1 ở đầu module này. Khi ấy, các module code khác của bạn vẫn dùng base 0 như mặc định, chỉ riêng code trong module mới import này mới sử dụng base 1.
Mẹo nhỏ: trên tinh thần này
1. trước khi copy một hàm hay đoạn code ở đâu đó, người ta luôn luôn đọc ở đầu module xem các Options được định ra sao và copy theo code.
2. người có kinh nghiệm thường đặt code copy vào module(s) riêng biệt với module(s) code của chính mình.
Lưu ý: những điều trên chỉ áp dụng cho VBAPjrject lớn, có nhiều code. Mấy cái project lặt vặt vài hàm thì cứ xem chúng không bị tréo nhau về options hay chạm tên thì gộp vào hết vào một nẻo cho dễ bảo trì.