ThangCuAnh
Mới rờ Ét xeo
- Tham gia
- 1/12/17
- Bài viết
- 896
- Được thích
- 793
- Giới tính
- Nam
- Nghề nghiệp
- Coder nghỉ hưu, RCE dạo
Hì hì, sáng nay cuối tuần rãnh rỗi, ngồi hì hụi làm cái file Excel để minh họa cho chuyện vui. Cái cô kế toán nghỉ nên phải tự tay làm, mà mình thì mới học Ét xèo nữa, nên "thật nà vất vã".
Chuyện như thế này, có 3 nhân vật trong chuyện, 1 là anh Excel, 2 là anh VBA, 3 là anh dùng VBA, hay còn gọi là coder. Một ngày ẹp trời, anh coder viết code và bắt đầu nói chuyện.
- Coder: Ê, Excel, tao cần lấy data từ Range("A1:C10000")
- Excel: Có ngay, mày muốn lấy Value hay Value2
- Coder: Tao muốn lấy Value. Tao thấy mấy người kia xài Value thì tao cũng xài Value, éo thèm đọc "đồ cú mèn" đâu.
- Excel: mẹ, xài sang. Chả có dữ liệu Currency hay DATETIME API mà đòi Value. Thôi, kệ mẹ mày, chờ tao chút, tao chuẫn bị dữ liệu cái. Lầm bầm: phải check, mang theo cái field Currency với record cho nó mà nó éo có dùng, mẹ nó, xài sang.
- Excel: Xong rồi, Value nhen, trả về Variant nhen. Tao ghi rõ trong "đồ cú mèn" rồi đó. Trong ruột Variant tao là array nhen.
- Coder: không được, tao không đọc "đồ cú mèn", thấy người ta dùng array của Variant không à, tao cũng lỡ tay gõ () rồi.
- Excel & Coder: cãi nhau....
- VBA: Thôi can 2 anh, em đứng giữa đây, khổ quá, mọi chuyện đã có em "no".
Và anh VBA phải hì hục cấp mới 1 array của Variant cho anh coder, lấy trong ruột Variant của anh Excel ra cái array, hì hục convert, chép từng thằng phần tử vào cái array của anh coder, rồi lo thêm vụ giải phóng cái Variant Excel trả về nữa cho rộng chỗ.
Cuối cùng chỉ có anh coder hể hả, xong nhiệm vụ, chỉ tội 2 anh Excel và VBA ngồi thở phì phò, lâu mồ hôi, chửi thầm: mẹ, thằng coder nhiều chuyện, đương không thêm cái () vào chi với đòi Value cho mình mệt bỏ xừ, tốn thêm 1 mớ bộ nhớ nữa.
Xong câu chuyện, mời bà con cười cái rồi download file test_Range để chạy kiểm tra câu chuyện và hiểu tại sao thằng VBA với Excel xúm vào chửi thằng coder nhé
Cứ click vô cái nút "ẹp ẹp xanh xanh" ấy rồi chờ chút xong xem kết quả
Chuyện như thế này, có 3 nhân vật trong chuyện, 1 là anh Excel, 2 là anh VBA, 3 là anh dùng VBA, hay còn gọi là coder. Một ngày ẹp trời, anh coder viết code và bắt đầu nói chuyện.
- Coder: Ê, Excel, tao cần lấy data từ Range("A1:C10000")
- Excel: Có ngay, mày muốn lấy Value hay Value2
- Coder: Tao muốn lấy Value. Tao thấy mấy người kia xài Value thì tao cũng xài Value, éo thèm đọc "đồ cú mèn" đâu.
- Excel: mẹ, xài sang. Chả có dữ liệu Currency hay DATETIME API mà đòi Value. Thôi, kệ mẹ mày, chờ tao chút, tao chuẫn bị dữ liệu cái. Lầm bầm: phải check, mang theo cái field Currency với record cho nó mà nó éo có dùng, mẹ nó, xài sang.
- Excel: Xong rồi, Value nhen, trả về Variant nhen. Tao ghi rõ trong "đồ cú mèn" rồi đó. Trong ruột Variant tao là array nhen.
- Coder: không được, tao không đọc "đồ cú mèn", thấy người ta dùng array của Variant không à, tao cũng lỡ tay gõ () rồi.
- Excel & Coder: cãi nhau....
- VBA: Thôi can 2 anh, em đứng giữa đây, khổ quá, mọi chuyện đã có em "no".
Và anh VBA phải hì hục cấp mới 1 array của Variant cho anh coder, lấy trong ruột Variant của anh Excel ra cái array, hì hục convert, chép từng thằng phần tử vào cái array của anh coder, rồi lo thêm vụ giải phóng cái Variant Excel trả về nữa cho rộng chỗ.
Cuối cùng chỉ có anh coder hể hả, xong nhiệm vụ, chỉ tội 2 anh Excel và VBA ngồi thở phì phò, lâu mồ hôi, chửi thầm: mẹ, thằng coder nhiều chuyện, đương không thêm cái () vào chi với đòi Value cho mình mệt bỏ xừ, tốn thêm 1 mớ bộ nhớ nữa.
Xong câu chuyện, mời bà con cười cái rồi download file test_Range để chạy kiểm tra câu chuyện và hiểu tại sao thằng VBA với Excel xúm vào chửi thằng coder nhé

Cứ click vô cái nút "ẹp ẹp xanh xanh" ấy rồi chờ chút xong xem kết quả
File đính kèm
Lần chỉnh sửa cuối: