Chia sẻ học VBA căn bản qua hình ảnh (1 người xem)

  • Thread starter Thread starter dhn46
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

dhn46

Hướng tới tương lai
Tham gia
1/3/11
Bài viết
3,251
Được thích
3,870
Qua GPE Dhn46 đã có thể nắm bắt được những bước chập chững về VBA, cũng phải tới 2 năm rồi những hình ảnh dưới đây được dhn46 tạo ra dựa trên thực tế tìm hiểu của mình, hy vọng sẽ hữu ích với các bạn muốn tiếp cận VBA.
1.jpg
2.jpg
3.jpg 4.jpg
5.jpg
 
Đến Picture số 22 này thì các bạn có thể thực hiện được bài toán trích lọc cơ bản, trích lọc nhiều điều kiện với Or, And dồn dòng lại khi trích lọc.

Các bước hướng dẫn được chia thành từng bước để các bạn có thể hình dung:

- Trích lọc 1 điều kiện, chưa dồn dòng (chuyển ngang sang)
- Cách dồn dòng dữ liệu khi dữ liệu không liên tục
- Trích lọc 1 điều kiện dồn dòng
- Trích lọc 2 điều kiện với Or, And

DHN-VBA-PIC-022 Trich loc nhieu DK voi AND.JPG
DHN-VBA-PIC-023 Trich loc nhieu DK voi Like.JPG
DHN-VBA-PIC-024 Sui dung 2 vong lap chuyen hang thanh cot.JPG
 
Lần chỉnh sửa cuối:
Upvote 0
Quá công phu Anh DHN, những người mới tiếp cận có thể nhìn và hiểu liền. Em xin phép lấy làm tư liệu nha. Cảm ơn anh nhiều
 
Upvote 0
Quá công phu Anh DHN, những người mới tiếp cận có thể nhìn và hiểu liền. Em xin phép lấy làm tư liệu nha. Cảm ơn anh nhiều
Chào bạn,

Mình cảm ơn những lời động viên từ bạn, tài liệu được mọi người tin dùng là niềm vui của mình. Tài liệu này mình up trên facebook cá nhân 2 năm rồi bây giờ mới up lên GPE.

Chúc bạn thành công nhé!
 
Upvote 0
Đến Picture số 22 này thì các bạn có thể thực hiện được bài toán trích lọc cơ bản, trích lọc nhiều điều kiện với Or, And dồn dòng lại khi trích lọc.

Các bước hướng dẫn được chia thành từng bước để các bạn có thể hình dung:

- Trích lọc 1 điều kiện, chưa dồn dòng (chuyển ngang sang)
- Cách dồn dòng dữ liệu khi dữ liệu không liên tục
- Trích lọc 1 điều kiện dồn dòng
- Trích lọc 2 điều kiện với Or, And

View attachment 177887
Anh @dhn46 có tài liệu học VBA như hình ảnh vậy không Anh. Có gì gửi qua Mail em là huonghoangvan920@gmail.com

Em cảm ơn Anh.
 
Upvote 0
Anh @dhn46 có tài liệu học VBA như hình ảnh vậy không Anh. Có gì gửi qua Mail em là huonghoangvan920@gmail.com

Em cảm ơn Anh.
Hình ảnh là tài liệu bạn nhé.

Nếu bạn muốn học thì hãy tự mình tạo mẫu theo những gì đã thấy, thực hành rồi dần sẽ hiểu. Tôi quan sát bạn trong 1 thời gian chủ yếu bạn chỉ hỏi, bạn chỉ muốn giải quyết những gì bạn muốn trước mắt, bạn nhồi 1 lượng kiến thức lớn trong khi bạn chưa hiểu về nó sẽ không hiệu quả 1 chút nào.

Rất nhiều người lên GPE với câu hỏi học VBA như thế nào? Tài liệu học ở đâu mà quên mất vấn đề tìm kiếm, tự thực hành, đi từng bước từng bước, thực hành nhiều lần, tìm nhiều cách vướng rồi hãy hỏi...

Đây là nhận xét riêng cá nhân tôi - người học VBA từ GPE, tôi chưa từng mua 1 quyển sách về VBA nào, tất cả những gì có được từ GPE và tìm kiếm trên Internet. Đôi lời thẳng thắn bạn có thể bỏ ngoài tai nếu không vừa ý.
 
Upvote 0
Hình ảnh là tài liệu bạn nhé.

Nếu bạn muốn học thì hãy tự mình tạo mẫu theo những gì đã thấy, thực hành rồi dần sẽ hiểu. Tôi quan sát bạn trong 1 thời gian chủ yếu bạn chỉ hỏi, bạn chỉ muốn giải quyết những gì bạn muốn trước mắt, bạn nhồi 1 lượng kiến thức lớn trong khi bạn chưa hiểu về nó sẽ không hiệu quả 1 chút nào.

Rất nhiều người lên GPE với câu hỏi học VBA như thế nào? Tài liệu học ở đâu mà quên mất vấn đề tìm kiếm, tự thực hành, đi từng bước từng bước, thực hành nhiều lần, tìm nhiều cách vướng rồi hãy hỏi...

Đây là nhận xét riêng cá nhân tôi - người học VBA từ GPE, tôi chưa từng mua 1 quyển sách về VBA nào, tất cả những gì có được từ GPE và tìm kiếm trên Internet. Đôi lời thẳng thắn bạn có thể bỏ ngoài tai nếu không vừa ý.
Không có gì đâu Anh ơi. Em cảm ơn Anh vì những lời chia sẽ này. Em sẽ ghi nhớ cách anh bày cho em để học VBA tốt hơn.

Em chúc Anh ngày vui.
 
Upvote 0
Cảm ơn anh đã nhiệt tình chia sẻ ạ, e mới đọc lướt qua, còn tạm thời đọc kỹ được đến bài này ạ. Vì e cũng tự học VBA nên học hành chưa bài bản cho lắm, hơn nữa em chưa đc tiếp cận phương pháp học trực quan này sớm hơn :)
Đoạn sửa code trong Macro này sau khi ghi Macro xong e thường vào macro chọn phím F8 để duyệt khi qua các dòng lệnh thì code đó thực thi điều gì, nếu qua dòng nào mà k thấy nó thay đổi thì e xoá đi cho code ngắn hơn. Không biết là nó có đúng không nhưng nếu đúng thì anh chỉ dẫn thêm mục này vào ảnh cho các bạn biết thêm anh nhé, hoặc là gợi ý anh ạ. Chân thành cảm ơn anh! chúc anh một ngày vui
 
Upvote 0
Tôi nghỉ, những bài fức tạp hơn, bạn dhn46 nên đính kèm thêm file & code!
 
Upvote 0
Tôi nghỉ, những bài fức tạp hơn, bạn dhn46 nên đính kèm thêm file & code!
Chào bạn,

Hiện những cấp độ được up là dạng căn bản nhất, rất dễ để thực hành. Việc gói gọn trong 1 bức ảnh để người dùng có thể hiểu và thực hành cũng là 1 điều cần cân nhắc. Những bạn mới thì nhìn và thực hiện trước, đánh lại code, viết lại CSDL sau đó theo logic mà triển khai sẽ tăng thêm tư duy lập trình, biết cách xây dựng dữ liệu cũng là 1 các học.

Với cấp độ căn bản như thế này thì quan điểm riêng của mình là người đọc phải tự mình ngẫm và triển khai, áp dụng, qua đó biết cách xây dựng CSDL, biết dạng dữ liệu, biết chuyển hóa cái chung thành cái riêng chứ mới cấp độ căn bản mà cái gì cũng làm sẵn cho thì thiếu hẳn 1 vế của sự nghiên cứu.

Những bài khó hơn mình cũng đang nghĩ để làm sao có thể dễ hình dung chỉ trong 1 bức ảnh, khi đó sẽ có file sau nhưng thời điểm này thì chưa thực hiện được.
 
Upvote 0
Cảm ơn chủ thớt , một hình thức học trực quan dễ hiểu, hóng các bài tiếp theo :)
 
Upvote 0
giải toán cũng phải có sơ đồ chiến thuật bài bản . Các bạn Hải Phòng ( gồm bạn DHN và cô giáo nick màu xanh ...) thật là giỏi và tâm huyết , mình rất khâm phục.
Chỉ tiếc mình ít học quá, mấy cái sơ đồ chiến thuật mình nhìn 1 hồi hoa cả mắt mà chưa có hiểu được . Hic -+*/-+*/
Nhưng chắc sẽ có nhiều người khác hiểu và áp dụng tốt . Chúc bạn thành công .
 
Upvote 0
giải toán cũng phải có sơ đồ chiến thuật bài bản . Các bạn Hải Phòng ( gồm bạn DHN và cô giáo nick màu xanh ...) thật là giỏi và tâm huyết , mình rất khâm phục.
Chỉ tiếc mình ít học quá, mấy cái sơ đồ chiến thuật mình nhìn 1 hồi hoa cả mắt mà chưa có hiểu được . Hic -+*/-+*/
Nhưng chắc sẽ có nhiều người khác hiểu và áp dụng tốt . Chúc bạn thành công .
Cảm ơn bạn AutoReply đã động viên, bạn vừa giỏi vừa khiêm tốn - mình còn phải học từ bạn nhiều nhiều.
Chúng mình cũng chỉ là người mới và cũng do đam mê mà gắn kết rồi đúc kết. Cũng hy vọng góp 1 phần nhỏ công sức để có thể có ích cho ai đó cần.

Để gió cuốn đi bạn nhỉ ;)?
 
Upvote 0
Thuật toán tính Min, Max chưa ổn vì em gán gía trị Min ban đầu bằng 1 số rất lớn là không hay lắm.
Theo tôi, gán giá trị đầu tiên của vùng bằng Max (Min), sau đó tạo vòng lặp so sánh trong vùng dữ liệu. Nếu tìm được giá trị khác thì dùng phép thay thế để có giá trị Max (Min) mới...
 
Lần chỉnh sửa cuối:
Upvote 0
Thuật toán tính Min, Max chưa ổn vì em gán gía trị Min ban đầu bằng 1 số rất lớn là không hay lắm.
Theo tôi, gán giá trị đầu tiên của vùng bằng Max (Min), sau đó tạo vòng lặp so sánh trong vùng dữ liệu. Nếu tìm được giá trị khác thì dùng phép thay thế để có giá trị Max (Min) mới...
Cảm ơn anh nhiều. Góp ý của anh rất hay và thực tiễn, em sẽ bổ sung vào Pic tiếp theo số DHN-VBA-PIC-016.1
 
Upvote 0
Các bạn hướng dẫn sau khi ghi macro xong rồi kéo bảng vba sang một bên,bảng tính sang 1 bên, bấm f8 để xem nhưng mình bấm f8 không thấy gì hết. Bạn hướng dẫn mình cách sử dụng f8 để xem quá trình thực hiện ghi macro
 
Upvote 0
Upvote 0
Cảm ơn anh đã nhiệt tình chia sẻ ạ, e mới đọc lướt qua, còn tạm thời đọc kỹ được đến bài này ạ. Vì e cũng tự học VBA nên học hành chưa bài bản cho lắm, hơn nữa em chưa đc tiếp cận phương pháp học trực quan này sớm hơn :)
Đoạn sửa code trong Macro này sau khi ghi Macro xong e thường vào macro chọn phím F8 để duyệt khi qua các dòng lệnh thì code đó thực thi điều gì, nếu qua dòng nào mà k thấy nó thay đổi thì e xoá đi cho code ngắn hơn. Không biết là nó có đúng không nhưng nếu đúng thì anh chỉ dẫn thêm mục này vào ảnh cho các bạn biết thêm anh nhé, hoặc là gợi ý anh ạ. Chân thành cảm ơn anh! chúc anh một ngày vui
Theo quan điểm của tôi thì với người mới không khuyến khích dùng F8, họ phải hình dung được Keyword trong đầu như thế nào mà lựa chọn câu lệnh đúng. Khi chạy F8 thì đến đâu biết đến đó, đúng thì giữ, còn nếu nắm bắt được Keyword trong những dòng Code thì sẽ tạo tư duy đọc, dịch code cho sau này.
 
Upvote 0
Xin trọn cả tài liệu này về ngâm cứu sau thì phải làm như thế nào ạ? Nếu được xin bạn gửi cho vào địa chỉ email debaco@gmail.com. Cám ơn bạn
 
Upvote 0
Em cảm ơn anh và rất ủng hộ anh sẽ tạo ra nhiều kiến thức VBA bằng hình ảnh như trên nữa ạ.
 
Upvote 0
Thuật toán tính Min, Max chưa ổn vì em gán gía trị Min ban đầu bằng 1 số rất lớn là không hay lắm.
Theo tôi, gán giá trị đầu tiên của vùng bằng Max (Min), sau đó tạo vòng lặp so sánh trong vùng dữ liệu. Nếu tìm được giá trị khác thì dùng phép thay thế để có giá trị Max (Min) mới...
Thầy vẫn còn thiếu chặt chẽ:
Để tìm trị MIN, ta cần lấy MAX trong dẫy (là đúng rồi) & nên cộng thêm 1;
Tương tự tìm MAX, ta nên bắt đầu từ trị MIN -1
 
Upvote 0
Thầy vẫn còn thiếu chặt chẽ:
Để tìm trị MIN, ta cần lấy MAX trong dẫy (là đúng rồi) & nên cộng thêm 1;
Tương tự tìm MAX, ta nên bắt đầu từ trị MIN -1
Tại sao phải +1 và -1? chỉ cần gán giá trị đầu tiên là max hoặc min là ok, thuật toán này người ta gọi là thuật toán tìm lính canh
ví dụ tìm học sinh cao nhất lớp
thường thì người ta sẽ bắt thằng đầu tiên đứng ngay cửa, và mặc định thằng đó là cao nhất lớp
sau đó xét dần từng thằng, thằng nào cao hơn bắt lại đứng ngay đó
cứ thế, thằng nào đứng ở đó cuối cùng là thằng đó cao nhất
 
Upvote 0
Vấn đề là trong danh sách (DS) tìm đó có mỗi 1 thì sao?
Hay trong DS có vài đứa, nhưng cùng số liệu tất tần tật, thì sao?
 
Upvote 0
Vấn đề là trong danh sách (DS) tìm đó có mỗi 1 thì sao?
Hay trong DS có vài đứa, nhưng cùng số liệu tất tần tật, thì sao?
Chắc chắn với bạn là danh sách có 1 bạn hoặc các bạn trùng nhau về số liệu thì kết quả chắc chắn ra sẽ đúng 100%, nếu có thời gian bạn có thể kiểm tra độ tin cậy của thuật toán
 
Upvote 0
Em chào anh @dhn46 , anh cho em hỏi 1 chút là ở hình ảnh hướng dẫn sử dụng If để xét "giỏi", "khá" thì nó chỉ sử dụng cho 1 ô, if range("A1") >8 vậy nếu mình có danh sách 12 người cần xét, thứ tự từ A1 đến A10, thì làm sao để nó xét điều kiện ở các ô tiếp được ạ?
 
Upvote 0
Em chào anh @dhn46 , anh cho em hỏi 1 chút là ở hình ảnh hướng dẫn sử dụng If để xét "giỏi", "khá" thì nó chỉ sử dụng cho 1 ô, if range("A1") >8 vậy nếu mình có danh sách 12 người cần xét, thứ tự từ A1 đến A10, thì làm sao để nó xét điều kiện ở các ô tiếp được ạ?
Chào bạn.

Khi đó phải dùng vòng lặp để duyệt qua vùng dữ liệu rồi áp điều kiện xét vào.

Bạn xem Pic số 014, 015, 015.1, 016, 016.1 để biết quy tắc vòng lặp For rồi kết hợp với Pic 012 rồi xây dựng thuật toán. Logic 1 chút sẽ ra kết quả.
 
Upvote 0
Chào bạn.

Khi đó phải dùng vòng lặp để duyệt qua vùng dữ liệu rồi áp điều kiện xét vào.

Bạn xem Pic số 014, 015, 015.1, 016, 016.1 để biết quy tắc vòng lặp For rồi kết hợp với Pic 012 rồi xây dựng thuật toán. Logic 1 chút sẽ ra kết quả.
vâng ạ, để em thử lại. Em cám ơn anh ạ. Chúc anh 20-10 vui vẻ ạ!
 
Upvote 0

Bài viết mới nhất

Back
Top Bottom