Chia sẻ kinh nghiệm dạy và học VBA cơ bản? (1 người xem)

Liên hệ QC

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

Cám ơn tất cả các ý kiến nối tiếp trên, mấy hôm không trở lại giờ thành bàn bạc xum tụ rui đây.

Tuy thế, các ý kiến đều xoay quanh vấn đề tự học, có thể tóm tắt ra đây mấy ý chính được đề cập

- Đa số ý kiến đó từ người tự học - trong đa số đó thì nhiều người đã (đặc biệt đã học bậc ĐH , CĐ ở VN) thì đã qua đào tạo 1 hoặc 2 ngôn ngữ lập trình (Fox, Pascal,...) ở trường lớp chính quy --> đối tượng này tự học VBA thì sẽ có nền tảng và không khó để tiếp cận.

- Các ý kiến vẫn chỉ đề cập chính vào vấn đề ý thức tự học / chăm học hỏi lên diễn đàn thắc mắc, đọc sách vv - những điều này chắc người học nào cũng thấy đúng vì nó là cái khái niệm chung chung tối thiểu nhất.

- Các ý kiến đều thống nhất, và thực tế cũng không thể phủ nhận ngược lại được rằng: tự học thì phải tìm cách học khoa học và đọc từng bước từng bước theo sách - và VBA học không phải khó (không cần có năng khiếu: như môn nghệ thuật nhạc, họa... hay môn thể thao thể lực), Mọi người chắc không khó để tiếp cận (nếu có trình độ excel cơ bản nhất định)- vấn đề là thời gian và cách học.

------------------------
Những tồn tại còn chưa được cùng bàn luận hay chia sẻ từ những người từng đứng lớp dạy (chuyên hay khôg chuyên), những người đã từng học trên lớp, hay các đối tượng khác, cũng chính là điều cần thiết cho người bắt đầu tiếp cận VBA, chính là nội dung topic này mong muốn nhận được các trao đổi thảo luận sâu ở các mặt sau (đã đề cập ngay từ topic 1):

- Nên học những gì trong VBA - nội dung kiến thức gồm gì?
- Thời lượng học: tổng thời gian, phân bố các buổi thế nào?
- Cách thức dạy / học như thế nào?
- và các vấn đề khác liên quan: thực hành , bài tập , giáo viên, đối tượng học.....?

* và cũng mong nhận được ý kiến mở rộng thêm: nếu tự học VBA căn bản từ GPE thì học thế nào, nên đọc những sách nào?



------------------------------------------------------
............
Về việc dạy và học (chính quy) thì để các nhà sư phạm họ viết. .....

Cái này chưa hẳn đúng, vì giờ người cần tìm lớp học, hay thậm chí tự học , hay muốn dạy cho người khác thì việc dạy và học phải cần quan tâm theo cách chính quy bài bản ah.
 
Năm mới, Tháng giêng, ngày rộng tháng dài,
Mong tiếp tục nhận được sự quan tâm bàn luận từ thầy cô, các thành viên gạo cội, cũ, mới...

Chủ đề sẽ có ích cho các thành viên muốn tiếp cận học VBA , hoặc đang tìm nơi chốn gửi lòng tin để học được VBA Cơ bản
 
Theo tôi nghiệm từ bản thân mình. Học ngôn ngữ nào cũng vậy chỉ có cách viết là khác, còn cách tư duy hoàn toàn giống nhau cả. Học lập trình mà muốn hiểu cặn kẽ là cả một vấn đề cần phải có thời gian.

-Người dạy cần phải đầu tư thật nhiều. không cần code kiết gì đâu. chỉ cần hướng dẫn cặn kẽ cách giải quyết các vấn đề bằng sơ đồ (một cách tự nhiên nhất) càng nhiều vấn đề càng tốt.
và nên tách 1 vấn đề lớn thành nhiều vấn đề nhỏ

Cách giải quyết bước đầu có thể không tối ưu nhưng dễ hiểu là ok. Vì khi người học đã hiểu thì tự động người ta sẽ tiếp tục vấn đề 1 cách đơn giản

ví dụ giải quyết vấn đề sau : ta có 1 dãy số nguyên dương, ta cần in ra các số nguyên tố?
bài này ta cần chia ra làm 2 phần
-phần 1: kiểm tra 1 số nguyên dương là số nguyên tố đúng hay sai
-phần 2 : chỉ cần duyệt tìm xem những số nào đúng là số nguyên tố thì in ra

thuật toán kiểm tra 1 số nguyên dương là số nguyên tố hay không? nên hướng dẫn thuật toán đơn giản nhất mà nhiều người biết: 1 số nguyên dương mà có 2 ước số thì được gọi là số nguyên tố

sau đó cho ví dụ cụ thế ví dụ như kiểm tra số 5
5:1, 5:2,5:3,5:4,5:5 sau đó đếm phép chia hết rồi kết luận 5 là số nguyên tố đúng hay sai?
cứ thế ta kiểm tra các số khác
(thuật toán này theo tôi dễ hiểu nhất. Không bàn tới việc tối ưu)

cứ thế người học tự nhiên thành thạo và tự tìm hướng giải quyết tối ưu, và sau đó có thể tự mình giải quyết các vấn đề của mình.
sau khi thành thạo rồi, người ta sẽ tìm cách giải quyết tối ưu, xem độ nhạy của thuật toán tối ưu chưa. nhanh hay chậm
rồi sau đó người ta sẽ tiến tới tối ưu bộ nhớ, khai báo biến như vậy là đúng không, khai báo có thừa hay thiếu gì không và dung lượng bộ nhớ của file này khi chạy chiếm bộ nhớ là bao nhiêu. (Trên diễn đàn mình ít có chỉ cụ thể về cách khai báo biến. có nhiều thành viên cứ vào là khai báo biến kiểu longinteger) do hiện tại bộ nhớ máy tính của mình lớn nên mình chưa thấy tràn bộ nhớ, mình nên chú ý là càng tối ưu cách khai báo biến càng tốt....
Trong quá trình học đh. Tôi thấy cách dạy kỹ thuật lập trình của thầy NGUYỄN TẤN TRẦN MINH KHANG là hay nhất từ trước tới giờ, nếu ai muốn tốt về kỹ thuật lập trình nên tìm sách của thầy học sau đó vận dụng vào công việc của mình(tôi đã từng nghiện hết tất cả các bài tập trong sách của thầy)

Bản thân tôi 3 năm trước không biết gì về VBA, nhưng khi đụng việc về EXCEL và VBA.
bước 1 tôi phân tích vấn đề bằng kỹ thuật lập trình
bước 2: cái gì về ngôn ngữ VBA tôi không biết tôi lên diễn đàn tìm về nó. còn nếu không có thì tôi hỏi các thành viên(nên nhớ là phải hỏi từng vấn đề nhỏ thôi, như vậy thì sẽ được trả lời nhanh nhất) sau nhiều vấn đề nhỏ tự mình ráp thành vấn đề lớn( tạm thời chưa cần tối ưu đâu)
cứ thế cứ thế các vấn đề về VBA tôi làm tuốt( chỉ công việc của tôi thôi) và sau khi làm xong tôi thường ngồi lại và suy ngẫm lại code xem tối ưu chưa. và hoàn thiện lại code trước khi giao cho khách hàng
nói tóm lại theo bản thân tôi muốn giỏi VBA thì trước hết phải học kỹ thuật lập trình tốt
 
Theo tôi nghiệm từ bản thân mình. Học ngôn ngữ nào cũng vậy chỉ có cách viết là khác, còn cách tư duy hoàn toàn giống nhau cả. Học lập trình mà muốn hiểu cặn kẽ là cả một vấn đề cần phải có thời gian.

-Người dạy cần phải đầu tư thật nhiều. không cần code kiết gì đâu. chỉ cần hướng dẫn cặn kẽ cách giải quyết các vấn đề bằng sơ đồ (một cách tự nhiên nhất) càng nhiều vấn đề càng tốt.
và nên tách 1 vấn đề lớn thành nhiều vấn đề nhỏ

................

Bản thân tôi 3 năm trước không biết gì về VBA, nhưng khi đụng việc về EXCEL và VBA.
bước 1 tôi phân tích vấn đề bằng kỹ thuật lập trình
bước 2: cái gì về ngôn ngữ VBA tôi không biết tôi lên diễn đàn tìm về nó. còn nếu không có thì tôi hỏi các thành viên(nên nhớ là phải hỏi từng vấn đề nhỏ thôi, như vậy thì sẽ được trả lời nhanh nhất) sau nhiều vấn đề nhỏ tự mình ráp thành vấn đề lớn( tạm thời chưa cần tối ưu đâu)
cứ thế cứ thế các vấn đề về VBA tôi làm tuốt( chỉ công việc của tôi thôi) và sau khi làm xong tôi thường ngồi lại và suy ngẫm lại code xem tối ưu chưa. và hoàn thiện lại code trước khi giao cho khách hàng
nói tóm lại theo bản thân tôi muốn giỏi VBA thì trước hết phải học kỹ thuật lập trình tốt

Như thế phihndhsp đã coi trọng về vấn đề hình thành học tư duy thuật toán (giải thuật) trước, từ từ thấm code sau. Tuy Thuật toán là quan trọng và cần học trước, nhưng code và cú pháp của ngôn ngữ cũng cần thiết học liền song song luôn vì đó cũng là làm quen và bổ sung cho phần tư duy kỹ thuật lập trình.

Nhân đây, Thầy phihndhsp đã có kinh nghiệm giảng dạy, cũng như những người đã từng đứng lớp dạy về lập trình, cho biết: Người học cần dự 1 khóa học cơ bản dài bao tiết thì đủ cho 1 ngôn ngữ lập trình (ví dụ VBA)??? và Nên học tuần tự thế nào; cũng như nếu tự học thì nên cần đầu tư thời gian thế nào?
 
Như thế phihndhsp đã coi trọng về vấn đề hình thành học tư duy thuật toán (giải thuật) trước, từ từ thấm code sau. Tuy Thuật toán là quan trọng và cần học trước, nhưng code và cú pháp của ngôn ngữ cũng cần thiết học liền song song luôn vì đó cũng là làm quen và bổ sung cho phần tư duy kỹ thuật lập trình.

Nhân đây, Thầy phihndhsp đã có kinh nghiệm giảng dạy, cũng như những người đã từng đứng lớp dạy về lập trình, cho biết: Người học cần dự 1 khóa học cơ bản dài bao tiết thì đủ cho 1 ngôn ngữ lập trình (ví dụ VBA)??? và Nên học tuần tự thế nào; cũng như nếu tự học thì nên cần đầu tư thời gian thế nào?
học về từng ngôn ngữ để hiểu từng cú pháp không khó, chỉ cần 7*3 21 ngày người ta có thể biết cũng khá khá về cách viết. ở ngoài có rất nhiều sách ghi là học C trong 21 ngày hay học cái gì đó 21 ngày.
tôi thì không tin là học 21 ngày. học lập trình là cả 1 vấn đề cần có thời gian, nếu anh biết ngôn ngữ mà không biết hướng giải quyết thì coi như không. Điều quan trong trong lập trình là cần phải hiểu được cái mình làm, cần phải phân tích yêu cầu để xây dựng hướng giải quyết. và khi anh đã có hướng giải quyết anh phải xây dựng được thuật toán, sau khi kiểm thử xong, thì anh code rất đơn giản
(ví dụ như xây 1 cái nhà bình thường thợ vẫn xây được, điều này tương tự như những người chỉ biết ngôn ngữ mà không biết kỹ thuật lập trình nhiều.
nếu xây 1 biệt thự thì thợ xây sẽ không làm được, mà cần có 1 kiến trúc sư vẽ ra bản vẽ sau đó thợ xây chỉ cần nhìn vào bản vẽ mà làm cho đúng. trong trường hợp này người kiếm trúc sư tương tự như người tư duy và xây dựng ra thuật toán)

tôi dám chắc chỉ cần cho tôi thuật toán, thì hầu như bất cứ ngôn ngữ nào tôi cũng có thể code được. Ý tôi muốn nói làm tầm quan trong của thuật toán là như thế nào? chính vì vậy học lập trình là không có thời gian kết thúc học học nữa học mãi. vấn đề là vô tận và mình phải tìm hướng giải viết từng vấn đề như vậy
muốn giải quyết 1 vấn đề ta cần làm những bước như sau
B1: Xác định yêu cầu
B2: Xây dựng thuật toán( có thể lựa chọn nhiều thuật toán khác nhau)
B3 Viết chương trình
B4: Hiệu chỉnh chương trình (kiểm thử)
B5: Áp dụng thực tiễn
Xác định yêu cầu là gì? là xác định cần đưa vào cái gì (input) cần lấy ra cái gì (output)
...
trước kia tôi học khóa lập trình C++ xong
sau đó học tiếp 2 khóa về kỹ thuật lập trình(code trên C++)
sau đó học cấu trúc dữ liệu(duyệt trên danh sách và cách thuật toán sắp xếp, duyệt cây )
học thêm 1 khóa về phân tích độ nhạy của thuật toán( phân tích độ nhanh chậm và cách khai báo cho phù hợp với từng biến...)
sau đó học lập trình hướng đối tượng
gôm lại tất cả những cái đó lại sau khi ứng dụng vào VBA cái nào cũng có cả không thiếu cái nào
nói tóm lại học lập trình là cái gì đó cần cần rất nhiều thời gian và trí tuệ( cái này rất ư là hại não)
 
Lần chỉnh sửa cuối:
Như thế phihndhsp đã coi trọng về vấn đề hình thành học tư duy thuật toán (giải thuật) trước, từ từ thấm code sau. Tuy Thuật toán là quan trọng và cần học trước, nhưng code và cú pháp của ngôn ngữ cũng cần thiết học liền song song luôn vì đó cũng là làm quen và bổ sung cho phần tư duy kỹ thuật lập trình.

Nhân đây, Thầy phihndhsp đã có kinh nghiệm giảng dạy, cũng như những người đã từng đứng lớp dạy về lập trình, cho biết: Người học cần dự 1 khóa học cơ bản dài bao tiết thì đủ cho 1 ngôn ngữ lập trình (ví dụ VBA)??? và Nên học tuần tự thế nào; cũng như nếu tự học thì nên cần đầu tư thời gian thế nào?

Theo tôi thì:
1. Cơ bản về ngôn ngữ mà mình sẽ sử dụng. Biến: có các kiểu dữ liệu nào, cách khai báo biến. Cấu trúc dữ liệu: có những kiểu cấu trúc dữ liệu nào, vd. collection, array ... Có những cấu trúc ngôn ngữ nào? vd. For ... Next, IF ... End If, Do ... Loop, Select ... end select v...v. Hiểu được cái triết lý của mỗi cấu trúc đó. Có những toán tử nào? vd. +, -, *, /, \, &, and, or v...v. Sub, Function là gì? VBA có những hàm nào? Không cần học thuộc mà chỉ cần biết qua vài hàm "quan trọng" để làm việc với số, chuỗi. Chỉ cần biết khi cần thì sẽ tìm kiếm thông tin ở đâu.

2. Lập trình trong VBA phần lớn sẽ có tương tác tới bảng tính. Vậy thì phải có khái niệm về bảng tính, về đối tượng. Vì nói cho cùng thì chỉ là truy cập tới đối tượng cần thiết và gọi phương thức nào đó của đối tượng đó hoặc đọc, ghi thuộc tính nào đó của đối tượng đó.
Tức phải hiểu bảng tính có "cấu trúc" thế nào về mặt đối tượng. Rằng có một đối tượng "gốc" là Application. Nó có vd. thuộc tính Workbooks chẳng qua là một tập các đối tượng workbook (đại diện cho một tập tin đang mở). Truy cập tới workbook cụ thể thì là vd. Set wb = Application.Workbooks(...). Mỗi workbook lại có thuộc tính worksheets chẳng qua là tập các đối tượng worksheet (đại diện cho một sheet cụ thể). Truy cập tới sheet cụ thể của workbook cụ thể chẳng qua là Application.Workbooks(...).Worksheets(...). Tương tự truy cập tới một vùng cụ thể trên sheet cụ thể của workbook cụ thể là Application.Workbooks(...).Worksheets(...).Range(...)
Tóm lại muốn truy cập tới một đối tượng cụ thể thì phải chỉ ra được toàn bộ "đường dẫn" tới đối tượng đó, y như phải chỉ ra toàn bộ đường dẫn tới một thư mục nào đó.

Khi đã có đối tượng rồi thì gọi phương thức, thiết lập thuộc tính của nó thôi. Vd. nhập "hichic" vào ô C5 trên sheet2 của workbook sort2darray.xlsm là
Mã:
Application.Workbooks("sort2darray.xlsm").Worksheets("Sheet2").Range("C5").Value = "hichic"

mà trong đó cả "cụm" Application.Workbooks("sort2darray.xlsm").Worksheets("Sheet2").Range("C5") chẳng qua là "truy cập" tới đối tượng Range cụ thể. Và ở trên ta thiết lập thuộc tính Value của đối tượng Range đã có.

Tóm lại là phải hiểu, phải hình dung được bảng tính có cấu trúc thế nào về mặt "đối tượng". Và bản chất của lập trình đối tượng là gì ...

3. Về lập trình nói chung, tức không phụ thuộc vào ngôn ngữ.
Phải rèn luyện tư duy. Máy tính chỉ mới có từ vài chục năm nay, lập trình cũng thế. Nhưng trong cuộc sống hàng ngày hàng giờ từ ngàn xưa ta luôn phải giải quyết những vấn đề khác nhau. Không hẳn dính dáng tới lập trình, thậm chí không hẳn dính dáng tới tính toán. Vd. làm phở bò như thế nào? Các bước cần làm như thế nào? Phải chỉ ra được các bước cần thực hiện, vd. "thái thịt thành những miếng ..., sau đó ...". Thế thôi. Còn thái như thế nào, bằng dao kiểu gì thì là những chi tiết kỹ thuật cụ thể, tùy người thực hiện. Người Việt gọt khoai, táo thì cầm dao mà sống dao hướng về phía mình và làm động tác "đẩy ra xa". Còn người xyz cầm dao mà lưỡi hướng vầ phía mình và làm động tác "kéo vào". Đó là chi tiết kỹ thuật. Những bước cần thực hiện để giải quyết vấn đề cụ thể trong cuộc sống thì từ ngàn xưa ta đã chả thực hiện sao. Gặp một vấn đề thì phải chỉ ra được các bước cần thực hiện. Sau đó chọn công cụ cụ thể để thực hiện các bước đó. Trong lập trình hay không lập trình thì đây là bước đầu tiên.

Khi đã có cơ bản rồi thì có thể phân tích một code bất kỳ. Thậm chí khi ai đó viết hộ code làm việc mình cần thì nên đọc, phân tích để hiểu code đó. Có như vậy mới có thể cải tiến chỗ này, chỗ kia để sử dụng cho trường hợp "hơi khác", tình huống "hơi khác", tối ưu. Đọc code của người khác nhiều khi học được cách tư duy lôgíc của họ, nhiều khi học được thuật toán mới. Giải toán cũng thế. Có khi mình làm ra kết quả rồi, cách giải cũng có vẻ hay nhưng có lúc đọc lời giải của người khác mới thấy họ có ý tưởng "tởm" quá, suy nghĩ lôgíc quá, cách của mình có vẻ "quê mùa" quá. Thậm chí nhìn code lỗi của người khác mà mình cũng học được. Biết để mà tránh trong tương lai, không đi theo vết xe đổ.

Phải tự viết nhiều code, những code đơn giản. Phải đọc help liên tục. Phải biết nếu cần thì tìm thông tin ở đâu. Alt + F11 --> View --> Object Browser --> đọc, đọc nữa, đọc mãi.
 
Theo tôi thì:

3. Về lập trình nói chung, tức không phụ thuộc vào ngôn ngữ.
Phải rèn luyện tư duy. Máy tính chỉ mới có từ vài chục năm nay, lập trình cũng thế. Nhưng trong cuộc sống hàng ngày hàng giờ từ ngàn xưa ta luôn phải giải quyết những vấn đề khác nhau. Không hẳn dính dáng tới lập trình, thậm chí không hẳn dính dáng tới tính toán. Vd. làm phở bò như thế nào? Các bước cần làm như thế nào? Phải chỉ ra được các bước cần thực hiện, vd. "thái thịt thành những miếng ..., sau đó ...". Thế thôi. Còn thái như thế nào, bằng dao kiểu gì thì là những chi tiết kỹ thuật cụ thể, tùy người thực hiện. Người Việt gọt khoai, táo thì cầm dao mà sống dao hướng về phía mình và làm động tác "đẩy ra xa". Còn người xyz cầm dao mà lưỡi hướng vầ phía mình và làm động tác "kéo vào". Đó là chi tiết kỹ thuật. Những bước cần thực hiện để giải quyết vấn đề cụ thể trong cuộc sống thì từ ngàn xưa ta đã chả thực hiện sao. Gặp một vấn đề thì phải chỉ ra được các bước cần thực hiện. Sau đó chọn công cụ cụ thể để thực hiện các bước đó. Trong lập trình hay không lập trình thì đây là bước đầu tiên.

Khi đã có cơ bản rồi thì có thể phân tích một code bất kỳ. Thậm chí khi ai đó viết hộ code làm việc mình cần thì nên đọc, phân tích để hiểu code đó. Có như vậy mới có thể cải tiến chỗ này, chỗ kia để sử dụng cho trường hợp "hơi khác", tình huống "hơi khác", tối ưu. Đọc code của người khác nhiều khi học được cách tư duy lôgíc của họ, nhiều khi học được thuật toán mới. Giải toán cũng thế. Có khi mình làm ra kết quả rồi, cách giải cũng có vẻ hay nhưng có lúc đọc lời giải của người khác mới thấy họ có ý tưởng "tởm" quá, suy nghĩ lôgíc quá, cách của mình có vẻ "quê mùa" quá. Thậm chí nhìn code lỗi của người khác mà mình cũng học được. Biết để mà tránh trong tương lai, không đi theo vết xe đổ.

Phải tự viết nhiều code, những code đơn giản. Phải đọc help liên tục. Phải biết nếu cần thì tìm thông tin ở đâu. Alt + F11 --> View --> Object Browser --> đọc, đọc nữa, đọc mãi.

Một người học lóm như em nhưng rất thích cách Thầy siwtom nói ở phần 3 này! Cám ơn bài viết này!
 
học về từng ngôn ngữ để hiểu từng cú pháp không khó, chỉ cần 7*3 21 ngày người ta có thể biết cũng khá khá về cách viết. ở ngoài có rất nhiều sách ghi là học C trong 21 ngày hay học cái gì đó 21 ngày.
tôi thì không tin là học 21 ngày. học lập trình là cả 1 vấn đề cần có thời gian, nếu anh biết ngôn ngữ mà không biết hướng giải quyết thì coi như không. Điều quan trong trong lập trình là cần phải hiểu được cái mình làm, cần phải phân tích yêu cầu để xây dựng hướng giải quyết. và khi anh đã có hướng giải quyết anh phải xây dựng được thuật toán, sau khi kiểm thử xong, thì anh code rất đơn giản

Như vậy theo thầy phihndhsp: thì Không thể học rút ngắn thời gian được tự học 21 ngày cũng là vấn đề, - nhưng ở đây theo cuốn sách đó là 21 ngày, mỗi ngày phải đầu tư 8h làm việc cũng có thể học xong cơ bản 1 ngôn ngữ lập trình đó thầy ah, tuy nhiên học thế thì cũng thật là nhồi nhét, và khó có ai hoàn thành - nên phải hiểu tựa đề cuốn sách ý là ta phải tiêu hết thời gian thực là 21 ngày * 8h/ ngày - song việc bố trí trải thời gian như thế nào là tùy sức mỗi người (ví dụ có người 2 tiếng, có người 3 tiếng/ ngày,.... )

Và đúng là không thể, và càng không nên rút ngắn thời gian khi dạy hay học cơ bản 1 ngôn ngữ lập trình, có 1 người bạn của tôi cũng thầy dạy Lập trình căn bản đầy kinh nghiệm thì nói rằng - học cơ bản 1 ngôn ngữ lập trình nên phải đầu tư cho khóa học đó là 45 tiết (1 tiết dài 45-50 phút, và cùng lắm là rút ngắn cũng phải 30-35 tiết - khi đó tiết chữa sửa bài tập hay thực hành đẩy về phía người học tự lo ở nhà) - nếu ít hơn thì khó mà người học nắm và viết được 1 cái code gì nho nhỏ riêng mình. Vì thế những người lựa chọn khóa học cần chú ý vấn đề thời lượng này (dĩ nhiên cùng các tiêu chí khác) khi chọn lớp chọn nơi học cho đáng đồng tiền bát gạo.

(ví dụ như xây 1 cái nhà bình thường thợ vẫn xây được, điều này tương tự như những người chỉ biết ngôn ngữ mà không biết kỹ thuật lập trình nhiều.
nếu xây 1 biệt thự thì thợ xây sẽ không làm được, mà cần có 1 kiến trúc sư vẽ ra bản vẽ sau đó thợ xây chỉ cần nhìn vào bản vẽ mà làm cho đúng. trong trường hợp này người kiếm trúc sư tương tự như người tư duy và xây dựng ra thuật toán)

tôi dám chắc chỉ cần cho tôi thuật toán,
............
.....
nói tóm lại học lập trình là cái gì đó cần cần rất nhiều thời gian và trí tuệ( cái này rất ư là hại não)

Đúng là để lập trình tương đối được thì càn cả chặng đường,
Kinh nghiệm của thầy học VBA là kinh nghiệm của người học theo con đường đã biết ngôn ngữ khác (C++), và trang bị trong túi đầy các công cụ hỗ trợ cho qtr học này.

Nhưng học cơ bản thì cũng là bước khởi đầu , nên không có gì vất vả quá đâu , và đến mức "hại não" (nói thế thì quá ai dám học nữa) đâu.... Bên cạnh đó còn có nhiều thú vị khi ta tiếp cận và tạo được những cái đoạn code riêng cho mình / đọc hiểu code người khác... Vì thế người mới học, mới tiếp cận cũng đừng ngại ngần chi, hãy dấn thân và bước thì sẽ tới...; Cũng như mạnh dạn hỏi và chia sẻ ở đây
 
Lần chỉnh sửa cuối:
Theo tôi thì:
1. Cơ bản về ngôn ngữ mà mình sẽ sử dụng.
............

2. Lập trình trong VBA phần lớn sẽ có tương tác tới bảng tính. Vậy thì phải có khái niệm về bảng tính, về đối tượng. Vì nói cho cùng thì chỉ là truy cập tới đối tượng cần thiết và gọi phương thức nào đó của đối tượng đó hoặc đọc, ghi thuộc tính nào đó của đối tượng đó.............
.....................

3. Về lập trình nói chung, tức không phụ thuộc vào ngôn ngữ.
Phải rèn luyện tư duy. Máy tính chỉ mới có từ vài chục năm nay, lập trình cũng thế. Nhưng trong cuộc sống hàng ngày hàng giờ từ ngàn xưa ta luôn phải giải quyết những vấn đề khác nhau.
.............
Phải tự viết nhiều code, những code đơn giản. Phải đọc help liên tục. Phải biết nếu cần thì tìm thông tin ở đâu. Alt + F11 --> View --> Object Browser --> đọc, đọc nữa, đọc mãi.

Cám ơn ý kiến của bác Siwtom,

Quả thực là học đầy đủ thì phải trải qua các quá trình các bước như vậy, cũng như hìnn thành suy nghĩ tư duy giải quyết vấn đề vận dụng vào cho máy tính giải được lồng ghép so sánh , xuất phát từ chính tư duy suy nghĩ / giải pháp của con người trong các vấn đề cuộc sống hàng ngày.Chia sẻ trên của bác sẽ giúp ích cho nhiều đối tượng từ người mới tiếp cận đến người đã đang trên con đường hoàn thiện kỹ năng.

Tuy thế, những người mới muốn học, tiếp cận cơ bản lập trình - thì cũng không cần cứ phải đủ các kỹ năng thì mới học hay mới bắt đầu- vì chính trong quá trình học / đọc / viết code ... sẽ hình thành bồi dưỡng các kỹ năng đó.

Sự cần thiết của những người mới học, là bước và bước lên con đường theo cách thức nào và phương nào - nói khác đi là nên học gì trước học gì sau, phân bổ việc học như thế nào, tổng thời gian bao lâu, thời gian cho từng phần ra sao... cũng chính là tiêu chí để so sánh chọn sách / nơi đăng ký học (nếu muốn tham dự lớp học) ;
Có như thế mới tránh việc phí tiền phí gạo cho việc học- đây cũng chính là điều topic muốn bàn thảo và hướng tới.


Mong tiếp tục nhận được chia sẻ , câu hỏi thảo luận... của tất cả..., xin cảm ơn
 
Lần chỉnh sửa cuối:
Một khi ta đã biết 10 ngoại ngữ, thì ngoại ngữ nữa có thể học trong 21 ngày!

& trong ngôn ngữ lập trình mình cũng cho rằng sẽ đúng!

Một khi anh đã biết sành sõi Pascal, Poxpro & VB & đủ nghị lực thì VBA có thể học trong 21 ngày!


Chúc xuân nhiều thắng lợi!
 
Các Lão Tiền Bói sau em nghe nói không sau không có thấy ai pos cho em cái nào để xem học cái căn bản VBA hết vậy, huhuu,..&&&%$R&&&%$R@$@!^%
 
Web KT

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

Back
Top Bottom