So sánh VBA và Python: Ngôn ngữ nào tốt hơn cho phân tích dữ liệu

Nội dung được viết bởi Lê Nguyễn Nhật Phương

Bất cứ khi nào chúng ta nói về phân tích dữ liệu Excel, VBA là công cụ đầu tiên xuất hiện trong tâm trí. Tuy nhiên, ngôn ngữ Python đã phát triển nhanh chóng trong vài năm qua với sự gia tăng của máy học và trí tuệ nhân tạo. Là một nhà phân tích dữ liệu, hãy cùng Gitiho so sánh hai ngôn ngữ này và tìm hiểu xem ngôn ngữ nào tốt hơn để phân tích dữ liệu trong bài viết này nhé!
 

VBA là gì?

VBA là viết tắt của Visual Basic for Applications, là một ngôn ngữ được phát triển cho các chương trình Microsoft Office như Excel, Word, Outlook, PowerPoint, v.v. VBA về cơ bản là sự phát triển của ngôn ngữ lập trình Visual Basic được phát triển bởi Microsoft vào những năm 90 để cho phép các chương trình của Microsoft giao tiếp với nhau.

Excel là công cụ phân tích dữ liệu phổ biến nhất cho máy tính bởi vì nó thân thiện với người dùng và được cài đặt sẵn trong các PC. Chúng ta có thể thực hiện các phép tính khác nhau một cách hiệu quả và chương trình này cũng có một nhóm các chức năng thống kê, tạo bảng tính để tính toán ngân sách hàng tháng, theo dõi chi phí liên quan và sắp xếp dữ liệu.

Lý do chúng ta đã nói Excel hay VBA không phải là một chương trình độc lập. VBA là một ngôn ngữ được sử dụng để tự động hóa các tác vụ trong các ứng dụng như Excel. Bên cạnh đó, VBA cung cấp một môi trường viết mã code đầy đủ để phân tích dữ liệu, theo đó, bạn có thể xây dựng các chức năng của riêng mình, tự động hóa các tác vụ và phát triển mã tùy chỉnh.

Để chỉnh sửa mã Visual Basic, bạn phải truy cập vào Visual Basic Editor (VBE) bằng cách chuyển đến tab Developer và sau đó nhấp vào Visual Basic hoặc bạn nhấn tổ hợp phím Alt + F11. Trình chỉnh sửa này là một môi trường phát triển tích hợp hoàn chỉnh (IDE) cho phép bạn tạo và chỉnh sửa Macro và các mã Visual Basic khác.

So sánh VBA và Python: Ngôn ngữ nào tốt hơn cho phân tích dữ liệu

 

Xem thêm: Tìm hiểu về cách tự tạo hàm Excel trong VBA

Lợi ích của việc sử dụng VBA

VBA rất phổ biến trong số những người sử dụng Excel bởi vì đây là một ngôn ngữ linh hoạt, không gây cản trở, khó khăn cho người mới bắt đầu và cú pháp mã giống tên gọi tiếng Anh của nó giúp bạn dễ dàng học và thực hành.

Tại sao VBA vẫn được đánh giá tốt mặc dù đã khá cũ? Hãy trả lời câu hỏi này bằng cách xem ba lợi ích hàng đầu của việc sử dụng VBA.

VBA giúp tự động hóa công việc

Khả năng tự động hóa các quy trình và tác vụ Excel nhanh chóng là điều làm cho VBA trở nên hữu ích. Nó có thể loại bỏ thao tác lặp lại các hoạt động và thay thế chúng bằng Macro. Bất cứ điều gì bạn có thể làm trong Excel đều có thể được tự động hóa bằng VBA, trên thực tế, bạn có thể làm những điều mà bạn thậm chí không nghĩ là có thể!

VBA cho phép bạn thực hiện lặp đi lặp lại các tác vụ theo cùng một cách mà không mắc bất kỳ lỗi nào. Nó cũng thực hiện các tác vụ nhanh hơn nhiều so với bạn có thể làm thủ công. Với sự trợ giúp của VBA, bạn sẽ tiết kiệm được rất nhiều thời gian và tránh được nhiều lỗi.

VBA thân thiện với người dùng

Microsoft đã tạo ra VBA để đi cùng với các ứng dụng của mình, vì vậy mã trong VBA rất trực quan. Không bao gồm dấu ngoặc hoặc cụm từ dài bắt buộc phải ghi nhớ. Bạn chỉ cần viết những gì bạn muốn làm, và thế là xong.

Ví dụ: Hãy xem xét dòng mã này:

Range (“A1: C7”). ClearContents. 

Bất kỳ ai quen thuộc với Excel đều có thể đoán được rằng mã này yêu cầu Excel xóa nội dung của mọi ô từ A1 đến C7. 

Tính thân thiện với người dùng của mã VBA giúp bạn dễ dàng sử dụng ngay cả những người không có kinh nghiệm lập trình cũng có thể tự tìm hiểu và viết mã VBA.

VBA có một cộng đồng người dùng lớn

VBA đã ra đời khá lâu, vì vậy có rất nhiều tài liệu và diễn đàn trợ giúp để hỗ trợ bạn làm bất cứ điều gì bạn muốn. Nó cũng là ngôn ngữ nhập môn của Microsoft nên nó có một cộng đồng người dùng lớn và mạnh mẽ.

Nếu bạn có kế hoạch tự học VBA và Excel, bạn sẽ thấy đây là một lợi thế lớn của quá trình tự học vì bạn có thể tham khảo, hỏi ý kiến của những người đi trước, hoặc tìm kiếm nhiều tài liệu.

Tham gia khóa học Online để nhận được giải đáp từ các thầy giáo cho câu hỏi của mình trong vài phút: Tuyệt đỉnh VBA - Viết code trong tầm tay 

So sánh VBA và Python: Ngôn ngữ nào tốt hơn cho phân tích dữ liệu
 

Nhược điểm của VBA

Microsoft đang có kế hoạch thay thế VBA bằng JavaScript. Bây giờ, sẽ phải mất ít nhất 10-15 năm trước khi VBA trở nên không còn phù hợp và công ty ngừng hỗ trợ nó. Tuy nhiên, điều đó chứng tỏ rằng bản thân Microsoft đã thích một thứ gì đó khác hơn là VBA. Vì vậy, sẽ không có chức năng hoặc khả năng mới thú vị nào được phát hành bằng ngôn ngữ này. 

VBA được coi là tuyệt vời cho rất nhiều thứ, nhưng nó thiếu một số tính năng lập trình hướng tới từng đối tượng cụ thể. Hãy ghi nhớ những nhược điểm này để giúp bạn quyết định lựa chọn giữa VBA và Python. Dưới đây là nhược điểm khác của việc sử dụng VBA:

VBA bị hạn chế đối với các ứng dụng Office

Như chúng ta đã nói ở trên, VBA không phải là một ngôn ngữ độc lập vì vậy nó chỉ có thể chạy trong một ứng dụng tích hợp khác và không bao giờ là một chương trình độc lập. Ngôn ngữ này được tích hợp nhiều vào Excel và các chương trình Microsoft Office khác. Điều này vừa mang lại những mặt tốt nhưng bên cạnh cũng có những mặt xấu:

- Thật tốt khi những người khác không cần bất kỳ phần mềm bổ sung nào ngoại trừ Excel để sử dụng Macro của bạn.

- Tuy nhiên, nó cũng giới hạn các chức năng của VBA vì bạn chỉ có thể sử dụng nó trong bảng tính Excel. Bạn không thể thao tác các chương trình hoặc ứng dụng web khác với VBA. So với các ngôn ngữ khác được sử dụng để phân tích dữ liệu, cụ thể là Python và mã R, thì có một điểm bất lợi là VBA bị hạn chế đối với các ứng dụng Office.

Xem thêm: Hướng Dẫn Về Mảng Trong VBA Excel: Các Kiểu Động, Đa Chiều

Python là gì?

Python là một ngôn ngữ lập trình đa năng, cấp cao và cũng linh hoạt và có mã nguồn mở. Nó đã nhanh chóng trở nên phổ biến vì khả năng xử lý một loạt các tác vụ.

Cú pháp của nó là sử dụng các từ khóa tiếng Anh, giúp bạn dễ dàng đọc và hiểu. Đó là lý do tại sao Python rất thân thiện với người mới bắt đầu sử dụng.

Kể từ khi Python ngày càng trở nên phổ biến, nhu cầu tuyển dụng các nhà phát triển Python giỏi cũng đang tăng vọt. Điều này có nghĩa là mức lương cho các công việc phát triển Python cũng đang tăng lên.

Nhiều công ty công nghệ lớn như Instagram, Facebook, Google và Pinterest sử dụng Python trong các ứng dụng của họ. Điều này chứng minh rằng Python là một ngôn ngữ lập trình mạnh mẽ và đáng tin cậy và chỉ ra rằng nó cũng là ngôn ngữ của tương lai.

Như chúng tôi đã nói, Python là một ngôn ngữ đa mục đích. Điều đó có nghĩa là, không giống như các ngôn ngữ dành riêng cho miền, Python có thể được sử dụng cho nhiều ứng dụng khác nhau.

Ví dụ, chúng ta sử dụng HTML và CSS để xây dựng và thiết kế các trang web và chúng ta có thể sử dụng Python để phát triển web, phát triển phần mềm, phát triển ứng dụng dành cho thiết bị di động, v.v. Python có ứng dụng rộng rãi, nhưng trong bài viết này, chúng ta sẽ chỉ thảo luận về cách Python được sử dụng để phân tích dữ liệu.

So sánh VBA và Python: Ngôn ngữ nào tốt hơn cho phân tích dữ liệu
 

Xem thêm: Cách dễ dàng cài đặt và viết chương trình Python đầu tiên của bạn

Lợi ích của việc sử dụng Python

Có những lý do chính đáng tại sao Python là một trong những ngôn ngữ lập trình được sử dụng phổ biến nhất. Python cung cấp các thư viện mạnh mẽ và được sử dụng bởi các tập đoàn lớn, có nghĩa là nó có thể xử lý lượng dữ liệu khổng lồ một cách dễ dàng.

Việc hiểu được những ưu điểm của Python sẽ giúp bạn so sánh nó với VBA. Vì vậy, cùng mình tìm hiểu những lợi ích chính của việc học Python để phân tích dữ liệu nhé:

Python rất dễ học

Python thân thiện với người mới bắt đầu và bạn sẽ thấy dễ dàng để bắt đầu với nó.

Cú pháp của Python ngắn gọn và cách đọc mã Python giống như đọc tiếng Anh, giúp dễ học và dễ hiểu. Python được coi là ngôn ngữ lập trình đơn giản nhất mà bạn có thể học, so với các ngôn ngữ lập trình khác hiện nay.

Python đi kèm với các gói thư viện mạnh mẽ

Python có một thư viện mở rộng chứa mã cho nhiều mục đích khác nhau như trình duyệt web, thao tác hình ảnh, cơ sở dữ liệu, email, kiểm tra đơn vị, v.v. Những thư viện tuyệt vời này giúp bạn thực hiện các tác vụ phân tích dữ liệu và xem xét dữ liệu phức tạp một cách dễ dàng.

Nếu chúng ta nói riêng về khoa học dữ liệu, Python có NumPy cho tính toán khoa học cơ bản, Pandas để thao tác và phân tích dữ liệu, Matplotlib để trực quan hóa và vẽ dữ liệu, Seaborn để trực quan hóa dữ liệu thống kê và một số thư viện mạnh mẽ hơn.

So sánh VBA và Python: Ngôn ngữ nào tốt hơn cho phân tích dữ liệu
 

Python là mã nguồn mở

Python là một công cụ có sẵn miễn phí để tải xuống. Không chỉ vậy, nó còn là mã nguồn mở. Điều này có nghĩa là bạn có thể tải xuống mã nguồn của Python, thực hiện các thay đổi và sử dụng mã Python đã thay đổi. Điều này có thể hữu ích khi bạn muốn sử dụng lại mã Python và tiết kiệm thời gian để xây dựng các ứng dụng mới.

Python được hỗ trợ tốt

Bạn nhất định phải đối mặt với các vấn đề bất kể ngôn ngữ lập trình bạn sử dụng là gì. May mắn thay, ngôn ngữ này cũng được sử dụng trong giới công nghiệp và học thuật. Vì vậy, có một cộng đồng lớn đằng sau Python và bạn luôn có thể chuyển sang Stack Overflow, tài liệu hoặc mã do người dùng đóng góp để được trợ giúp.

Bên cạnh đó, năm 2020, Python tiếp tục giữ vị trí đứng dầu trong 4 năm liên tiếp cho ngôn ngữ lập trình được yêu thích nhất trong khảo sát dành cho nhà phát triển Stack Overflow.

Xem thêm: Các kiểu dữ liệu cơ bản trong Python 3: Chuỗi (String)

Nhược điểm của Python

Không có ngôn ngữ lập trình nào là hoàn hảo và Python cũng vậy, nó cũng có những khuyết điểm, điều này cần được cân nhắc trước khi đầu tư thời gian của bạn vào việc học lập trình Python. Dưới đây là một số nhược điểm của Python:

Mức tiêu thụ bộ nhớ của Python cao

Python có các kiểu dữ liệu linh hoạt, do đó, mức tiêu thụ bộ nhớ trong Python cao hơn so với các ngôn ngữ khác. Điều này có nghĩa là Python không phải là lựa chọn phù hợp cho bất kỳ tác vụ đòi hỏi bộ nhớ nào. Ngoài ra, đối với bất kỳ dự án nào, bạn sẽ cần theo dõi mức tiêu thụ bộ nhớ và bạn cũng sẽ phải tuân theo các phương pháp viết mã để tránh các vấn đề tiềm ẩn về bộ nhớ.

Python có thể có thời gian thực thi chậm

Python là một ngôn ngữ thông dịch. Nó có nghĩa là mã Python được thực hiện bằng cách sử dụng các hướng dẫn trực tiếp thay vì biên dịch nó thành các lệnh ngôn ngữ máy. Hành vi này thường có thể dẫn đến thời gian thực thi chậm hơn.

Để hiểu rõ hơn điều này, hãy lấy ngôn ngữ C làm ví dụ. Nó là một ngôn ngữ biên dịch, vì vậy nó không tốn nhiều thời gian để kiểm tra mã nguồn và nhanh chóng chuyển đổi nó thành các lệnh CPU. Do đó, mã được viết bằng ngôn ngữ C thực thi nhanh hơn Python.

Python đơn giản

Python là ngôn ngữ lập trình đơn gian tuy nhiên sự đơn giản của Python thực sự có thể gây hại. Nó rất dễ học, và cú pháp rõ ràng và ngắn gọn cũng giúp bạn dễ đọc và dễ hiểu. Điều này làm cho các lập trình viên quen với Python đến mức họ cảm thấy mã của các ngôn ngữ phức tạp hơn như Java là không cần thiết.

“Bất lợi” này không thực sự là lỗi của ngôn ngữ. Chúng ta, con người, thích những thứ đơn giản, vì vậy, nhiều người tự nhiên bị thu hút bởi Python hơn các ngôn ngữ khác phức tạp hơn.

So sánh VBA và Python: Ngôn ngữ nào tốt hơn cho phân tích dữ liệu
 

So sánh VBA và Python 

Phân biệt chữ hoa chữ thường 

Python phân biệt chữ hoa chữ thường. Điều này có nghĩa là các đoạn mã như r.Value và r.value là khác nhau (lưu ý: trong trường hợp đầu tiên chữ V được viết hoa). Cho nên, trong Python, bạn phải chú ý đến trường hợp bạn sử dụng trong mã của mình.

Ngược lại, trong VBA không phân biệt chữ hoa và chữ thường vì vậy 2 đoạn mã trên sẽ được xử lý giống nhau.

Nếu có thao tác gì đó không hoạt động như mong đợi, hãy kiểm tra tệp nhật ký PyXLL. Mọi trường hợp ngoại lệ chưa được ghi nhận sẽ được ghi lại ở đó và nếu bạn đã cố gắng truy cập vào một thuộc tính chưa được ghi nhận thì bạn có thể sẽ thấy một Attribute Error ngoại lệ.

Gọi tên phương thức 

Trong Python, dấu ngoặc đơn ( ) luôn được sử dụng khi gọi một phương thức. Việc bỏ qua việc thêm dấu ngoặc đơn trong Python sẽ dẫn đến phương thức không được gọi, vì vậy điều quan trọng là phải biết thuộc tính nào tương ứng với phương thức (do đó phải được gọi tên) và thuộc tính nào có giá trị có sẵn bằng tham chiếu.

Trong VBA, chúng có thể bị bỏ qua.
 

Ví dụ: Phương thức Select trên Range là một phương thức và vì vậy phải được gọi với dấu ngoặc đơn trong Python, nhưng trong VBA chúng thường bị bỏ qua.

' Select is a method and is called without parentheses in VBA
Range("B11:K11") .Select

 

from pyxll import xl_app
xl = xl_app()
# In Python, the parentheses are necessary to call the method
xl.Range('B11:K11').Select()

 

Việc truy cập thuộc tính không yêu cầu dấu ngoặc đơn trong VBA, và làm như vậy sẽ cho kết quả bất ngờ!

Ví dụ: Thuộc tính range.Value sẽ trả về giá trị của phạm vi. Việc thêm dấu ngoặc đơn () vào nó sẽ cố gắng gọi giá trị đó và vì giá trị đó không thể gọi được, nó sẽ dẫn đến lỗi.

from pyxll import xl_app
xl = xl_app()
# Value is a property and so no parentheses are used
value = xl.Range('B11:K11').Value

 

Named Arguments (Đối số được đặt tên) 

Trong VBA, Named Arguments (các đối số được đặt tên) được sử dụng với mã Name := Value.

Trong Python, cú pháp hơi khác và chỉ sử dụng dấu bằng = thay vì dấu := . Một điểm khác biệt quan trọng nữa là VBA không phân biệt chữ hoa chữ thường nhưng Python thì có, vì vậy trong VBA, bạn có thể viết:

Set myRange = Application.InputBox(prompt := "Sample", type := 8)

 

Trong Python, phương thức tương tự này sẽ được gọi là

from pyxll import xl_app
xl = xl_app()
my_range = xl.InputBox(Prompt='Sample', Type=8)

Thuộc tính trong VBA và Python

Việc truy cập một thuộc tính từ một đối tượng là tương tự trong cả hai ngôn ngữ.

Ví dụ: Để tìm nạp thuộc tính ActiveSheet từ một đối tượng, bạn sẽ thực hiện như sau trong VBA:

Set mySheet = Application.ActiveSheet

 

Trong Python, cú pháp được sử dụng như sau:

from pyxll import xl_app
xl = xl_app()
my_sheet = xl.ActiveSheet

 

Thuộc tính với đối số 

Trong VBA, sự phân biệt giữa các phương thức và thuộc tính không rõ ràng vì các thuộc tính trong VBA có thể lấy đối số. Còn trong Python, một thuộc tính không bao giờ nhận đối số.

Các tài sản Range.Offset là một ví dụ về một tài sản mà có đối số tùy chọn. Nếu thuộc tính được gọi mà không có đối số, nó chỉ đơn giản trả về cùng một đối tượng Range (phạm vi).

Đoạn mã VBA sau kích hoạt ba cột ở bên phải và ba hàng từ một ô tính trên trang tính1 :

Worksheets("Sheet1").Activate
ActiveCell.Offset(rowOffset:=3, columnOffset:=3).Activate

 

Để chuyển đổi điều này sang Python, chúng ta phải thực hiện các thay đổi sau:

Thay thế thuộc tính Offset bằng phương thức GetOffset.

Thay thế rowOffset, columnOffset RowOffsetColumnOffset như được chỉ định trong tài liệu Range.Offset .

Gọi phương thức Activate (kích hoạt) bằng cách thêm dấu ngoặc đơn vào cả hai vị trí mà nó được sử dụng.

from pyxll import xl_app
xl = xl_app()
xl.Worksheets('Sheet1').Activate()
xl.ActiveCell.GetOffset(RowOffset=3, ColumnOffset=3).Activate()

Đối tượng ngầm và 'With' 

Khi viết mã VBA, mã thường được viết trên một đối tượng như WorkBook hoặc Sheet. Đối tượng đó được sử dụng ngầm khi viết mã VBA.

Nếu sử dụng câu lệnh 'With..End' trong VBA, đích của câu lệnh 'With' sẽ trở thành đối tượng ngầm định.

Nếu một thuộc tính không được tìm thấy trên đối tượng ngầm hiện tại (ví dụ thuộc tính được chỉ định trong câu lệnh 'With..End') thì thuộc tính tiếp theo sẽ được thử (ví dụ Worksheet).

Trong Python không có đối tượng ngầm định vì vậy đối tượng bạn muốn tham chiếu phải được chỉ định rõ ràng.

Ví dụ: đoạn mã VBA sau đây thực hiện chọn một phạm vi và thay đổi chiều rộng cột.

Sub Macro2()
    ' ActiveSheet is a property of the Application
    Set ws = ActiveSheet
 
    With ws
        ' Range is a method of the Sheet
        Set r = Range("A1:B10")
 
        ' Call Select on the Range
        r.Select
    End With
 
    ' Selection is a property of the Application
    Selection.ColumnWidth = 4
End Sub

 

Để viết cùng một mã bằng Python, mỗi đối tượng phải được tham chiếu một cách rõ ràng.

from pyxll import xl_macro, xl_app
 
@xl_macro
def macro2():
    # Get the Excel.Application instance
    xl = xl_app()
 
    # Get the active sheet
    ws = xl.ActiveSheet
 
    # Get the range from the sheet
    r = ws.Range('A1:B10')
 
    # Call Select on the Range
    r.Select()
 
    # Change the ColumnWidth property on the selection
    xl.Selection.ColumnWidth = 4

 

Lập chỉ mục trong Collections (Bộ sưu tập) 

VBA sử dụng dấu ngoặc đơn ( ) để gọi các phương thức và lập chỉ mục vào các Collections.

Trong Python, dấu ngoặc vuông [ ] được sử dụng để lập chỉ mục vào các Collections.

 

Cần cẩn thận khi lập chỉ mục vào các bộ sưu tập Excel, vì Excel sử dụng độ lệch chỉ mục là 1 trong khi Python sử dụng 0. Điều này có nghĩa là để lấy mục đầu tiên trong bộ sưu tập Python bình thường, bạn sẽ sử dụng chỉ mục 0, nhưng khi truy cập các bộ sưu tập từ Excel bạn sẽ sử dụng 1.

VBA so với Python trong việc phân tích dữ liệu: Cái nào tốt hơn?

Chúng ta đã xem xét cả hai ngôn ngữ riêng lẻ — chúng là gì, ưu và nhược điểm của chúng. Bây giờ đã đến lúc thảo luận chi tiết về ngôn ngữ nào trong số hai ngôn ngữ này tốt hơn cho việc phân tích dữ liệu. Nhưng trước khi làm điều đó, chúng ta hãy xem lại những điểm giống và khác nhau cơ bản giữa hai ngôn ngữ.

Cả PythonVBA đều là ngôn ngữ thông dịch cấp cao. Ngôn ngữ Python là ngôn ngữ dành cho mục đích chung, trong khi ngôn ngữ thứ hai là ngôn ngữ dành riêng cho miền.

Python là mã nguồn mở, có nghĩa là nó cho phép mọi người thay đổi mã nguồn theo những cách sáng tạo. Ngược lại, VBA là độc quyền của Microsoft, có nghĩa là nó không phải là mã nguồn mở và không thể chỉnh sửa trên nhiều công cụ.

Vì vậy, VBA hay Python là tốt hơn với mục đích phân tích dữ liệu?

Đối với bất kỳ ai muốn bắt đầu phân tích dữ liệu, Python là ngôn ngữ được ưa thích trong khi VBA không được khuyến khích cho các nhà phân tích dữ liệu có tham vọng lớn.

Như chúng ta đã thảo luận, sự phổ biến của Python đã tăng lên trong vài năm qua và sẽ tiếp tục phát triển trong tương lai. Thêm vào đó, Python cũng có rất nhiều thư viện cực kỳ hữu ích cho mọi mục đích như phân tích dữ liệu, phát triển web, v.v.

Một trong những lý do chính khiến Python được ưa thích hơn VBA là vì Python tích hợp tốt với các chương trình khác. Bạn có thể nhập và xuất nhiều loại định dạng tệp khác nhau sang Python. Mã của nó cũng có thể chỉnh sửa và tương thích với nhiều công cụ, và nó xử lý các tập dữ liệu lớn tốt hơn nhiều so với VBA. Trên con đường học tập và sử dụng Python, bạn sẽ tìm thấy rất nhiều hướng dẫn và diễn đàn để giúp bạn tìm ra cách thoát khỏi các vấn đề thường gặp và nâng cao kiến ​​thức của mình. Hoặc khi bạn đã học những kiến ​​thức cơ bản về Python, bạn có thể tìm hiểu một thư viện được thiết kế để phân tích dữ liệu như Pandas.

Python thân thiện với người mới bắt đầu và bạn sẽ không gặp bất kỳ vấn đề lớn nào khi học nó. Hoặc nếu bạn gặp một số lỗi không thể giải quyết, hãy trao đổi với các thầy giáo của Gitiho để nhận được câu trả lời nhanh chóng nhất tại đây: Phân tích dữ liệu với lập trình Python từ Zero đến Hero

Quay lại cuộc tranh luận, Python có luôn tốt hơn VBA để phân tích dữ liệu không? Cả hai ngôn ngữ đều thực hiện tốt nhiệm vụ của mình. Vì vậy, không phải VBAkhông tốt và không nên sử dụng trong mọi trường hợp. Bạn vẫn có thể sử dụng VBA cho nhiều chức năng trong Excel, như sao chép sổ làm việc, dự báo doanh số và thu nhập, tạo hóa đơn và biểu mẫu, đồng thời tiết kiệm thời gian cho bất kỳ tác vụ Excel lặp đi lặp lại nào bằng cách tạo Macro.

Kết luận

Mặc dù cả PythonVBA đều có ưu và nhược điểm của chúng, nhưng trong các trường hợp khác nhau mà Python và VBA vẫn được ưu tiên sử dụng.

Python được ưa thích hơn VBA, chủ yếu vì nó là một ngôn ngữ có khả năng thích ứng trong tương lai. VBA cũng bị hạn chế đối với các ứng dụng Office, trong khi Python có thể dễ dàng tích hợp với các chương trình phần mềm khác và thậm chí là các ngôn ngữ lập trình khác. 

Nếu bạn muốn đi sâu vào phân tích dữ liệu, bạn nên học Python và một vài thư viện chính trong Python được thiết kế để phân tích dữ liệu. Nhưng nếu bạn là một người thường xuyên dùng Excel, VBA có thể là một công cụ hữu ích giúp bạn tiết kiệm rất nhiều thời gian và công sức. 

Tùy vào từng trường hợp sử dụng, bạn hãy cân nhắc lựa chọn ngôn ngữ phù hợp nhé! 

Có một khóa học tại Gitiho giúp cho bạn học lập trình Python trong phân tích dữ liệu từ cơ bản đến nâng cao để lọc và làm sạch dữ liệu, xây dựng vác mô hình dự đoán, hay tạo biểu đồ, đồ thị trực quan cho báo cáo,...

Cùng xem và đăng ký học thử khóa học PY01 - Phân tích dữ liệu với lập trình Python From Zero to Hero ở bên dưới bạn để khám phá sức mạnh của Python trong phân tích dữ liệu bạn nhé.

/5 - ( bình chọn)

/5 - ( bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông