Nhờ hỗ trợ cú pháp truy vấn trong ADODB

Liên hệ QC
Đọc cú pháp thấy khó nhằn quá ạ, trông không thân thiện như trong VBA.
Chắc mới và cách viết khác với VBA nên bạn chưa quen, tôi thấy nó cũng không khó, cứ sử dụng các công cụ có sẵn của nó , mỗi cái nó đều có code bạn không cần viết lại làm gì, chỉ cần sửa lại theo ý mình, vì nó lập trình theo từng bước nên nó debug rất dễ, làm nhiều case bạn sẽ quen thôi
 
Chắc mới và cách viết khác với VBA nên bạn chưa quen, tôi thấy nó cũng không khó, cứ sử dụng các công cụ có sẵn của nó , mỗi cái nó đều có code bạn không cần viết lại làm gì, chỉ cần sửa lại theo ý mình, vì nó lập trình theo từng bước nên nó debug rất dễ, làm nhiều case bạn sẽ quen thôi
Vâng anh,
Như trong power pivot e cũng chưa hình dung có công cụ measure mạnh vậy. Mới chỉ dừng lại ở kéo thả, thêm vài trường cộng trừ nhân chia...
Kể cả trong power query, thông thường có các step để biết nó đang làm j, mà thấy code của a chạy vèo cái, chẳng có step nào, nên chưa biết bắt đầu từ đâu.
 
Vâng anh,
Như trong power pivot e cũng chưa hình dung có công cụ measure mạnh vậy. Mới chỉ dừng lại ở kéo thả, thêm vài trường cộng trừ nhân chia...
Kể cả trong power query, thông thường có các step để biết nó đang làm j, mà thấy code của a chạy vèo cái, chẳng có step nào, nên chưa biết bắt đầu từ đâu.
Tôi để hàm dưới in nên nó không show từng step, tôi gửi lại
Theo đúng thì khi connect dữ liệu xong dùng power query để chỉnh sửa dữ liệu cho đúng chuẩn rồi add vào Data model viết các Measure để thực hiện insight và analysis , rồi dùng power pivot để tạo các báo cáo BI.
Power query có thể trả kết quả được nhưng như vậy như VBA chỉ trả 1 kết quả không phải báo cáo BI (không thể kéo thả), muốn kết quả khác là phải code lạị
Excel nhờ có 2 công cụ này mà nó là một trong những tool BI tốt nhất bên cạnh power BI, Tableau, Qlikview...Các chứng chỉ thi data analytics ban đầu của Micrsoft đều có Excel là Power pivot, Power query chứ không phải hàm excel hay VBA, xu hướng giờ là business intelligence, business analyst, data analytics nên các báo cáo phải automactic hết đưa lên web, cloud... có thể xem real time mọi nơi, các doanh nghiệp có ERP gần như phải có thêm các tool BI này, thế giới đã đi trước cái này lâu rồi mà Việt Nam giờ mới bắt đầu
Hai công cụ trên excel là miễn phí và nó căn bản để bước vào data analytics, diễn dàn bây giờ tập chung vào hàm excel và VBA quá mà cái mảng BI thì gần như chưa có chỉ có lác đác mấy bài cơ bản của thầy Ptm, diễn đàn nên đầu tư thêm vào mảng này vì chắc chắn xu hướng tới nó sẽ phát triển rất mạnh (một buổi học trung bình power BI có giá 2 triệu là thấy nó hot cỡ nào)
Tôi nói thật từ lúc chuyển sang các tool BI giá trị nó mang lại cho tôi rất nhiều so với trước về thời gian cũng như giá trị, chẳng phải ngồi làm số liệu hàng tháng, chẳng phải code cho từng case hay report, hạn chế được cái sai sót trong quá trình tính toán, chỉ mất thời gian thiết lập ban đầu, các tháng sau chỉ cần lên lịch refresh là xong. Các báo cáo của Công ty tôi chuyển sang dùng các tool này hết , connect trực tiếp vơi DB hay Cloud (sharepoint, onedrive..), các báo chi tiết thì dùng Power query power pivot, các dashborad, summary report thì dùng power BI pubilc lên Web, điện thoại. Lúc trước dùng mail để gửi báo cáo thì giờ các BOD, BOM có thể xem trực tiếp qua Web, điện thoại luôn
Một cái hấp dẫn nữa trong power pivot là Dax language, các hàm trong Dax phần nhiều giống hàm bên excel, nó xử lý trên mảng và là dynamic array, nó trả các kết quả khác nhau phụ thuộc vào ngữ cảnh vì vậy nó có thể tạo được rất nhiều báo cáo chứ không phải trả một kết quả như bên excel, các bạn nào thích mảng bên excel qua Dax sẽ thấy nó thú vị hơn nhiều , đến một lúc nào đó các bạn sẽ có suy nghĩ "sao không tìm hiểu cái này sớm hơn" như tôi, một điểm lưu ý là M và Dax thì không cần thiết phải học cả 2 nhưng để làm báo cáo BI thì phải học Dax, M giống như công cụ hỗ trợ cho Dax ( Dax không có loop, đệ quy) giống như VBA và hàm excel, vì vậy chỉ cần học Dax , Power query biết các tool có sẵn nó là đủ
 

File đính kèm

  • Bao cao moi.xlsb
    210.4 KB · Đọc: 27
...Hai công cụ trên excel là miễn phí và nó căn bản để bước vào data analytics, diễn dàn bây giờ tập chung vào hàm excel và VBA quá mà cái mảng BI thì gần như chưa có chỉ có lác đác mấy bài cơ bản của thầy Ptm, diễn đàn nên đầu tư thêm vào mảng này vì chắc chắn xu hướng tới nó sẽ phát triển rất mạnh (một buổi học trung bình power BI có giá 2 triệu là thấy nó hot cỡ nào)
...
Từ mấy năm trước tôi đã nhắc nhở rằng ở diễn đàn này (GPE) người ta chỉ biết chạy theo dữ liệu chứ chưa hề biết vượt qua và dẫn đầu chúng.
Để đền bù vào chỗ này, người ta chú tâm vào VBA, có những lúc đi vượt ra ngoài, dùng mấy công cụ COM và API để làm đủ mọi thứ người ta tưởng rằng mình đã có khả năng làm chủ.
Sự thật thì "ra ngoài" hoàn toàn khác với "vượt lên trước". Làm chủ là dùng cái nhìn tổng thể, nhìn khối dữ liệu và tự biết những gì có thể rút được gì từ đấy. Chạy theo dữ liệu là cứ dùng những khuôn mẫu sẵn có và sử dụng những kỹ thuật để dồn dữ liệu vào các khuôn mẫu ấy.
 
Chỗ này thêm RPA (Robotic Process Automation), có thể dùng luôn Microsoft Power Automate (hoặc UiPath Orchestrator) thì không phải động gì tới luôn. :)
Cài lịch refresh thì ở lúc thiết lập ban đầu thôi bạn, refresh lúc mấy giờ, mấy lần trong ngày, 1 tháng bao nhiêu ngày ... tới thời điểm tự động refresh. Microsoft Power Automate tôi có từng thử nhưng thấy nó thiết lập lằng nhằng quá nên thôi, hiện tại tôi đang sử dụng Gateway và Flow của Microsoft.
 
... không phải động gì tới luôn. :)
Thường thường các bạn trên đây làm việc theo kiểu tổng hợp dữ liệu thành báo cáo cho nên coi trọng cái vụ "tự động". Vì nó đỡ bước nào hay bước nấy.
Tôi làm việc theo kiểu phân tích dữ liệu để hổ trợ quản lý cho nên không thích cái vụ "tự động". Một vài bước "refresh" chúng tôi chẳng coi vào đâu.
 
Từ mấy năm trước tôi đã nhắc nhở rằng ở diễn đàn này (GPE) người ta chỉ biết chạy theo dữ liệu chứ chưa hề biết vượt qua và dẫn đầu chúng.
Để đền bù vào chỗ này, người ta chú tâm vào VBA, có những lúc đi vượt ra ngoài, dùng mấy công cụ COM và API để làm đủ mọi thứ người ta tưởng rằng mình đã có khả năng làm chủ.
Sự thật thì "ra ngoài" hoàn toàn khác với "vượt lên trước". Làm chủ là dùng cái nhìn tổng thể, nhìn khối dữ liệu và tự biết những gì có thể rút được gì từ đấy. Chạy theo dữ liệu là cứ dùng những khuôn mẫu sẵn có và sử dụng những kỹ thuật để dồn dữ liệu vào các khuôn mẫu ấy.
Vâng, lúc trước cũng hài lòng với excel , VBA và một số cái khác hỗ trợ . Một file excel nhét mấy chục cái báo cáo, đưa lên ribbon cho phép chọn giống Slicer, kết hợp qua lại giữa hàm và VBA... sau khi ra ngoài làm thời gian mới biết mình lạc hậu người ta đã lên Cloud sài automatic report chứ không phải làm thù công như mình, nghĩ lại giờ nhàn bao nhiêu thì lúc đó cực bấy nhiêu, mỗi lần phát sinh mấy báo cáo mới là phải ngồi code tiếp, dữ liệu bị sai thì chẳng biết sai do code hay do Data phải ngồi debug lại, giờ dùng mấy tool BI chỉ cần thiết kế data chuẩn viết vài dòng Dax là giải quyết hơn 40% các báo cáo lúc trước, việc debug là chỉ còn xem xét phía data. Mà dùng VBA để làm dữ liệu nó còn dở hơn hàm, VBA dùng Dic phải quét từng dòng nếu Table có nhiều relationship với các Table khác thì dùng hàm ngon hơn, nếu không dữ liệu nhiều nó quét biết chừng nào mới xong, Data model và các tool BI bây giờ sử dụng công nghệ Columnar storage tức là nó chỉ quan tâm đến distinct value chứ không quan tâm đến số lượng dòng, một Table mà có 10 ID mà có 50 triệu dòng sẽ nhẹ hơn rất nhiều với 1 Table có 1 triệu ID mà 1 triệu dòng.
 
Tôi để hàm dưới in nên nó không show từng step, tôi gửi lại
Theo đúng thì khi connect dữ liệu xong dùng power query để chỉnh sửa dữ liệu cho đúng chuẩn rồi add vào Data model viết các Measure để thực hiện insight và analysis , rồi dùng power pivot để tạo các báo cáo BI.
....
Hai công cụ trên excel là miễn phí và nó căn bản để bước vào data analytics, diễn dàn bây giờ tập chung vào hàm excel và VBA quá mà cái mảng BI thì gần như chưa có chỉ có lác đác mấy bài cơ bản của thầy Ptm, diễn đàn nên đầu tư thêm vào mảng này vì chắc chắn xu hướng tới nó sẽ phát triển rất mạnh (một buổi học trung bình power BI có giá 2 triệu là thấy nó hot cỡ nào)
......
Cảm ơn anh, các Step đã rất rõ ràng rồi a.
Tài liệu của thầy @ptm0412 về Power Query cho Beginners, nhưng e thấy đã rất hữu ích rồi. Trước việc tổng hợp dữ liệu bằng VBA cỡ vài chục nghìn dòng, từ vài file thì được. Mà khi chơi đến vài chục file, từ vài Folder là thấy bất cập ngay.
Nếu có tài liệu, kinh nghiệm hay với Dax, mong anh chia sẻ để anh/em diễn đàn cùng phát triển.
 
Cảm ơn anh, các Step đã rất rõ ràng rồi a.
Tài liệu của thầy @ptm0412 về Power Query cho Beginners, nhưng e thấy đã rất hữu ích rồi. Trước việc tổng hợp dữ liệu bằng VBA cỡ vài chục nghìn dòng, từ vài file thì được. Mà khi chơi đến vài chục file, từ vài Folder là thấy bất cập ngay.
Nếu có tài liệu, kinh nghiệm hay với Dax, mong anh chia sẻ để anh/em diễn đàn cùng phát triển.
Không có gì trong số đó vô ý sinh ra đâu
VBA giải quyết nhiều folder, nhiều trăm ngàn dòng thì vẫn có thể tốt - quan trọng là thuật toán và công cụ phối hợp thôi
DAX, POWER Query, ... PIVOT TABLE chỉ thích hợp với các dữ liệu có mẫu chuẩn hoặc gần chuẩn, hoặc chí ít không hay ít dao động về cấu trúc thôi, ...
Trong khi đó VBA thì linh động hơn nhiều, với nhiều bài toán khác nhau không chỉ Cơ sở dữ liệu, mà còn các bài toán đúng dần, tối ưu ...vv
Vì sao khẳng định thế - vì VBA cũng là dạng ngôn ngữ, ngôn ngữ thì sử dụng sao là do người lập trình: có uyển chuyển và thuật toán tốt: góc nhìn, quy mô ra sao mà thôi.
Tất nhiên ứng với 1 trường hợp cụ thể thì sử dụng cái gì tốt hơn cái khác là có, Xét hay khẳng định cho tất cả là điều dễ làm ngộ nhận
 
Lần chỉnh sửa cuối:
Không có gì trong số đó vô ý sinh ra đâu
VBA giải quyết nhiều folder, nhiều trăm ngàn dòng thì vẫn có thể tốt - quan trọng là thuật toán và công cụ phối hợp thôi
DAX, POWER Query, ... PIVOT TABLE chỉ thích hợp với các dữ liệu có mẫu chuẩn hoặc gần chuẩn, hoặc chí ít không hay ít dao động về cấu trúc thôi, ...
Trong khi đó VBA thì linh động hơn nhiều, với nhiều bài toán khác nhau không chỉ Cơ sở dữ liệu, mà còn các bài toán đúng dần, tối ưu ...vv
Vì sao khẳng định thế - vì VBA cũng là dạng ngôn ngữ, ngôn ngữ thì sử dụng sao là do người lập trình: có uyển chuyển và thuật toán tốt: góc nhìn, quy mô ra sao mà thôi.
Tất nhiên ứng với 1 trường hợp cụ thể thì sử dụng cái gì tốt hơn cái khác là có, Xét hay khẳng định cho tất cả là điều dễ làm ngộ nhận
Vâng ạ, đúng là so sánh thì hơi khập khiễng, dùng VBA thì cơ động, chỉ là cần phải suy nghĩ nhiều hơn, làm sao thuật toán phải tối ưu (từ khâu nhỏ nhất là khai báo biến) để code chạy nhanh nhất.
Với Power Query thì không cần nghĩ ngợi gì, cứ để cho nó tự thân làm, thôi thì thời gian suy nghĩ tối ưu code thì để thời gian đó làm việc khác.
 
Không có gì trong số đó vô ý sinh ra đâu
VBA giải quyết nhiều folder, nhiều trăm ngàn dòng thì vẫn có thể tốt - quan trọng là thuật toán và công cụ phối hợp thôi
DAX, POWER Query, ... PIVOT TABLE chỉ thích hợp với các dữ liệu có mẫu chuẩn hoặc gần chuẩn, hoặc chí ít không hay ít dao động về cấu trúc thôi, ...
Trong khi đó VBA thì linh động hơn nhiều, với nhiều bài toán khác nhau không chỉ Cơ sở dữ liệu, mà còn các bài toán đúng dần, tối ưu ...vv
Vì sao khẳng định thế - vì VBA cũng là dạng ngôn ngữ, ngôn ngữ thì sử dụng sao là do người lập trình: có uyển chuyển và thuật toán tốt: góc nhìn, quy mô ra sao mà thôi.
Tất nhiên ứng với 1 trường hợp cụ thể thì sử dụng cái gì tốt hơn cái khác là có, Xét hay khẳng định cho tất cả là điều dễ làm ngộ nhận
Hình như bạn có chút hiểu lầm thì phải, dữ liệu đưa vào Data model thì có thể phải chuẩn, còn Power query thì không cần, vì nhiệm vụ chính của Power query là xử lý dữ liệu chưa sạch, chưa chuẩn thành dữ liệu chuẩn để add vào Data model
Lấy ví dụ connect dữ liệu các file excel trong folder, nếu cùng cấu trúc như cùng sheet , cùng Range thì VBA và PQ làm tốt, nhưng giả sử các Table nó nằm ở các vị trí không giống nhau, có thể nằm vị trí này vị trí kia , sheet này sheet kia, tiêu đề các Table có thể không giống nhau nhưng cùng tính chất thì có thể nói là dữ liệu chưa chuẩn thì tôi nghĩ VBA lấy không được, còn Power query thì làm được nó cho phép view , chỉnh sửa chọn giả lập trước khi connect.
Tốc độ thì không cần phải bàn, cơ chế VBA là dùng vòng lặp xét từng phần tử thì nó đã không tối ưu rồi so với các công nghệ mới là In-memory và columnar storage rồi, cộng đồng power BI nó xem M language là VBA version 2 và DAX language là hàm excel Version 2
 
Vâng ạ, đúng là so sánh thì hơi khập khiễng, dùng VBA thì cơ động, chỉ là cần phải suy nghĩ nhiều hơn, làm sao thuật toán phải tối ưu (từ khâu nhỏ nhất là khai báo biến) để code chạy nhanh nhất.
Với Power Query thì không cần nghĩ ngợi gì, cứ để cho nó tự thân làm, thôi thì thời gian suy nghĩ tối ưu code thì để thời gian đó làm việc khác.
Ta chỉ cần nữa Power Query - không phải chìa khóa vạn năng
Hình như bạn có chút hiểu lầm thì phải, dữ liệu đưa vào Data model thì có thể phải chuẩn, còn Power query thì không cần, vì nhiệm vụ chính của Power query là xử lý dữ liệu chưa sạch, chưa chuẩn thành dữ liệu chuẩn để add vào Data model
Lấy ví dụ connect dữ liệu các file excel trong folder, nếu cùng cấu trúc như cùng sheet , cùng Range thì VBA và PQ làm tốt, nhưng giả sử các Table nó nằm ở các vị trí không giống nhau, có thể nằm vị trí này vị trí kia , sheet này sheet kia, tiêu đề các Table có thể không giống nhau nhưng cùng tính chất thì có thể nói là dữ liệu chưa chuẩn thì tôi nghĩ VBA lấy không được, còn Power query thì làm được nó cho phép view , chỉnh sửa chọn giả lập trước khi connect.
Tốc độ thì không cần phải bàn, cơ chế VBA là dùng vòng lặp xét từng phần tử thì nó đã không tối ưu rồi so với các công nghệ mới là In-memory và columnar storage rồi, cộng đồng power BI nó xem M language là VBA version 2 và DAX language là hàm excel Version 2
Cũng vậy thôi bạn, Tôi không phủ định bài toán với đối tượng xử lý là trường (filed) hay bảng (table) thì Power query xử lý tốt (dù trước đó phải Clean Data - có chuẩn hay không chuẩn thì cũng phải là theo dạng cơ sở dữ liệu (dù chưa chuẩn)

Còn VBA thì linh động hơn: ở các bài toán đa dạng và nhiều dạng không chỉ kiểu cơ sở dữ liệu.

Nên không có gì hiểu lầm ở đây cả. Sử dụng đúng công cụ với dữ liệu mới là điều cần làm.
 
Ta chỉ cần nữa Power Query - không phải chìa khóa vạn năng
...
Nó gần như là chìa khoá vạn năng trong lĩnh vực bảng tính đối với dân cần kết nối dữ liệu như tôi.
Đương nhiên ngoài lĩnh vực bảng tính thì tôi có những cách làm khác. Điển hình ở đây nhiều ngừoi thích dùng VBA để quản lý files, nhưng với tôi thì đây là công việc của script (tức là VBScript) hay powershell. Công việc về toán thì Python ăn đứt VBA.
 
Ta chỉ cần nữa Power Query - không phải chìa khóa vạn năng

Cũng vậy thôi bạn, Tôi không phủ định bài toán với đối tượng xử lý là trường (filed) hay bảng (table) thì Power query xử lý tốt (dù trước đó phải Clean Data - có chuẩn hay không chuẩn thì cũng phải là theo dạng cơ sở dữ liệu (dù chưa chuẩn)

Còn VBA thì linh động hơn: ở các bài toán đa dạng và nhiều dạng không chỉ kiểu cơ sở dữ liệu.

Nên không có gì hiểu lầm ở đây cả. Sử dụng đúng công cụ với dữ liệu mới là điều cần làm.
Dữ liệu nạp vào Power query không nhất thiết là table , filed mà là dạng any có thể là String, html...kết quả trả về cũng không nhất thiết là Table, filed (trừ khi phải nạp vào Data model)
Ví dụ như bài sắp xếp chuỗi tăng dần (dữ liệu là String) : A1,A5,A4,A3,A2,A2,A1=>A1,A2,A3,A4,A5 nếu viết VBA thì phải split dùng vòng lặp loại trùng , sau đó viết thêm hàm sắp xếp, hoặc dùng array list...
Còn trong power query thì đơn giản như vầy, các hàm trong M gần như loại bỏ việc phải dùng vòng lặp như trong VBA nó rất mạnh trong việc xử lý mảng, trường hợp đặc biệt lắm mới phải dùng loop, nó chỉ kém VBA các vấn đề liên quan đến window như cut, copy file, folder....Như bạn nói, các case đặc biệt thì dùng VBA , còn riêng về xử lý số liệu thì nên dùng các tool này, vì nó là gốc của các báo cáo BI
1603697802635.png
 
...Như bạn nói, các case đặc biệt thì dùng VBA , còn riêng về xử lý số liệu thì nên dùng các tool này, vì nó là gốc của các báo cáo BI
Tôi đồng ý với bài #36 của bạn (*), ngoài điểm này.
Bạn có nuôi con nít hay thú cưng (chó, mèo, chim, ...) bao giờ chưa? Khi bạn cho chúng ăn, nếu chìu theo những món ăn chúng thích thì không bao lâu chúng sẽ lâm vào tình trạng nhẹ thì mập quá cân, nặng thì mỡ gan và chết. Bắt buộc phải ép chúng ăn cho đúng thành phần (thỉnh thoảng ăn bậy không kể).

Đối với người nghiện VBA cũng vậy. Nếu không cứng rắn thì họ sẽ viện mọi cớ để thoả cơn nghiện của mình. Những người giúp ở đây cũng không ngoại lệ, họ cũng nghiện VBA cho nên cứ gặp vấn đề đẻ viết VBA là mừng húm, ít khi nghĩ đến giải pháp khác.

(*) Tương lai của truy cập dữ liệu là từ nhiều nguồn lạ và rất có thể toàn rác rưởi. Khi MS ra Power Query là đã chú ý đến chỗ này. Tương lai của Power Query hoặc công cụ nào đó thay thế nó là nhìn dữ liệu theo nhiều góc cạnh (cube) chứ không phải hai chiều (table, căn bản bảng tính).
VBA dẫu có biến hoá hế nào thì cũng là ngôn ngữ lập trình thế hệ 3 (third generation language). Được hổ trợ bằng dll chỉ đủ để nó gọi các COM's của Windows và may ra gọi là 3.5 thôi. Fourth/Fifth generation thuộc về các ngôn ngữ có thư viện khổng lồ và không bị giới hạn bởi địa bàn (platform: Windows, Mac,...) như Python.
 
Tôi đồng ý với bài #36 của bạn (*), ngoài điểm này.
Bạn có nuôi con nít hay thú cưng (chó, mèo, chim, ...) bao giờ chưa? Khi bạn cho chúng ăn, nếu chìu theo những món ăn chúng thích thì không bao lâu chúng sẽ lâm vào tình trạng nhẹ thì mập quá cân, nặng thì mỡ gan và chết. Bắt buộc phải ép chúng ăn cho đúng thành phần (thỉnh thoảng ăn bậy không kể).

Đối với người nghiện VBA cũng vậy. Nếu không cứng rắn thì họ sẽ viện mọi cớ để thoả cơn nghiện của mình. Những người giúp ở đây cũng không ngoại lệ, họ cũng nghiện VBA cho nên cứ gặp vấn đề đẻ viết VBA là mừng húm, ít khi nghĩ đến giải pháp khác.

(*) Tương lai của truy cập dữ liệu là từ nhiều nguồn lạ và rất có thể toàn rác rưởi. Khi MS ra Power Query là đã chú ý đến chỗ này. Tương lai của Power Query hoặc công cụ nào đó thay thế nó là nhìn dữ liệu theo nhiều góc cạnh (cube) chứ không phải hai chiều (table, căn bản bảng tính).
VBA dẫu có biến hoá hế nào thì cũng là ngôn ngữ lập trình thế hệ 3 (third generation language). Được hổ trợ bằng dll chỉ đủ để nó gọi các COM's của Windows và may ra gọi là 3.5 thôi. Fourth/Fifth generation thuộc về các ngôn ngữ có thư viện khổng lồ và không bị giới hạn bởi địa bàn (platform: Windows, Mac,...) như Python.
Các tool BI bây giờ cũng có thêm Python và R trong việc xử lý số liệu, mà 2 thằng này xem như là trùm trong việc xử lý số liệu rồi.
 
Nó gần như là chìa khoá vạn năng trong lĩnh vực bảng tính đối với dân cần kết nối dữ liệu như tôi.
Đương nhiên ngoài lĩnh vực bảng tính thì tôi có những cách làm khác. Điển hình ở đây nhiều ngừoi thích dùng VBA để quản lý files, nhưng với tôi thì đây là công việc của script (tức là VBScript) hay powershell. Công việc về toán thì Python ăn đứt VBA.
ah, Bác VietMini ah, Viết trên là muốn nói ngôn ngữ lập trình nói chung thôi, còn nếu nói rộng ra nữa thì cái gì chả làm được, lại lạc lối vào việc là dùng 1 công cụ giải quyết mọi thứ. Vì dù là gì thì cuối cùng cũng là xử lý vấn đề một cái hệ thống.

Nên VBA hay Power Query cũng chỉ là một phần rất nhỏ của xử lý dữ liệu thôi.


Nó gần như là chìa khoá vạn năng trong lĩnh vực bảng tính đối với dân cần kết nối dữ liệu như tôi.
Đương nhiên ngoài lĩnh vực bảng tính thì tôi có những cách làm khác. Điển hình ở đây nhiều ngừoi thích dùng VBA để quản lý files, nhưng với tôi thì đây là công việc của script (tức là VBScript) hay powershell. Công việc về toán thì Python ăn đứt VBA.
ah, Bác VietMini ah, Viết trên là muốn nói ngôn ngữ lập trình nói chung thôi, còn nếu nói rộng ra nữa thì cái gì chả làm được, lại lạc lối vào việc là dùng 1 công cụ giải quyết mọi thứ. Vì dù là gì thì cuối cùng cũng là xử lý vấn đề một cái hệ thống.

Nên VBA hay Power Query cũng chỉ là một phần rất nhỏ của xử lý dữ liệu thôi.
Dữ liệu nạp vào Power query không nhất thiết là table , filed mà là dạng any có thể là String, html...kết quả trả về cũng không nhất thiết là Table, filed (trừ khi phải nạp vào Data model)
Ví dụ như bài sắp xếp chuỗi tăng dần (dữ liệu là String) : A1,A5,A4,A3,A2,A2,A1=>A1,A2,A3,A4,A5 nếu viết VBA thì phải split dùng vòng lặp loại trùng , sau đó viết thêm hàm sắp xếp, hoặc dùng array list...
Còn trong power query thì đơn giản như vầy, các hàm trong M gần như loại bỏ việc phải dùng vòng lặp như trong VBA nó rất mạnh trong việc xử lý mảng, trường hợp đặc biệt lắm mới phải dùng loop, nó chỉ kém VBA các vấn đề liên quan đến window như cut, copy file, folder....Như bạn nói, các case đặc biệt thì dùng VBA , còn riêng về xử lý số liệu thì nên dùng các tool này, vì nó là gốc của các báo cáo BI
View attachment 248071
Bạn lôi cả python và R nữa thì là hết rồi
Các bài viết tôi chỉ muốn nói, không nên lạm dụng hay tôn thờ 1 công cụ xử lý hết các vấn đề, Thậm chí cả Python và R cũng vậy vẫn có những hạn chế của nó. Hay cả Excel sẽ có đến lúc cũng phải thay đổi lớn.

Khi xử lý các bài toán lớn thiên về tổ chức cấu trúc cơ sở dữ liệu thì nên dùng các tool (công cụ) như bạn nói - còn trái lại chỉ là cố gắng sử dụng các tiểu xảo mà thôi, vì Clean Data không phải là mục đích chính , bước chính của các tool này - nếu cố ép chỉ là gượng gạo.
 
Lần chỉnh sửa cuối:
ah, Bác VietMini ah, Viết trên là muốn nói ngôn ngữ lập trình nói chung thôi, còn nếu nói rộng ra nữa thì cái gì chả làm được, lại lạc lối vào việc là dùng 1 công cụ giải quyết mọi thứ. Vì dù là gì thì cuối cùng cũng là xử lý vấn đề một cái hệ thống.

Nên VBA hay Power Query cũng chỉ là một phần rất nhỏ của xử lý dữ liệu thôi.



ah, Bác VietMini ah, Viết trên là muốn nói ngôn ngữ lập trình nói chung thôi, còn nếu nói rộng ra nữa thì cái gì chả làm được, lại lạc lối vào việc là dùng 1 công cụ giải quyết mọi thứ. Vì dù là gì thì cuối cùng cũng là xử lý vấn đề một cái hệ thống.

Nên VBA hay Power Query cũng chỉ là một phần rất nhỏ của xử lý dữ liệu thôi.

Bạn lôi cả python và R nữa thì là hết rồi
Các bài viết tôi chỉ muốn nói, không nên lạm dụng hay tôn thừa 1 công cụ xử lý hết các vấn đề, Thậm chí cả Python và R cũng vậy vẫn có những hạn chế của nó. Thậm chí cả Excel sẽ có đến lúc cũng phải thay đổi. Khi xử lý các bài toán lớn thiên về tổ chức cấu trúc cơ sở dữ liệu thì nên dùng các tool (công cụ) như bạn nói - còn trái lại chỉ là cố gắng sử dụng các tiểu xảo mà thôi, vì Clean Data không phải là mục đích chính của các tool này.
vâng anh ạ,
Tinh thần ở đây chủ thớt chỉ hỏi về ADO, mà mọi người đang bàn tới cả VBA, PQ, DAX...
Cho nên thực tế 1 bài toán có nhiều cách giải, miễn là cho kết quả đúng, người làm cảm thấy happy là được ạ.
 
Web KT
Back
Top Bottom