Tích hợp Python trong Excel: Khám phá tính năng thú vị và cách sử dụng

Hướng dẫn sử dụng Python trong Excel bản beta Microsoft 365 Insider

Chào bạn, tôi rất vui được chia sẻ với bạn bài viết mới nhất của mình về Python trong Excel mới được Microsoft ra mắt ngày 22/8 vừa qua. Trong bài viết này, chúng ta sẽ cùng nhau khám phá những điều mới mẻ của Excel khi tích hợp Python và những lợi ích khi bạn đón đầu công nghệ để giúp công việc của mình “nhàn” và đạt hiệu quả tốt nhất.

I. Chỉ sử dụng Excel truyền thống liệu đã đủ?

Trong thế giới biến đổi không ngừng của công nghệ cùng với sự xuất hiện của AI ngày nay, làm việc với dữ liệu và phân tích câu chuyện đằng sau những con số là một phần quan trọng của cuộc sống. Đối với nhiều người, Microsoft Excel là công cụ đầu tiên bạn tiếp cận từ khi ngồi trên giảng đường đại học dùng để xử lý bảng tính và là kỹ năng thiết yếu khi đi làm. Vẫn là Excel nhưng ngày một mạnh mẽ hơn, tiện dụng hơn và thông minh hơn khi bạn sử dụng bản Microsoft 365 thay vì bản truyền thống. Tuy vậy, Excel cũng bộc lộ những điểm yếu cốt lõi của mình mà có thể bạn cũng gặp phải như tôi, điều mà khiến tôi lựa chọn Python là công cụ chính cho việc phân tích dữ liệu. Dưới đây là một số hạn chế thường gặp:

  • Gặp nhiều khó khăn khi xử lý các dữ liệu thô chưa được chuẩn hóa. Bạn phải tốn nhiều công sức để có thể xử lý những dữ liệu này bởi Excel không được thiết kế để thực hiện một cách hiệu quả. Trong khi đó Python là ngôn ngữ lập trình đồng thời được sử dụng rộng rãi cho mục đích xử lý dữ liệu, học máy và tự động hóa cùng nhiều ứng dụng khác.
  • Hạn chế về khả năng thực hiện các phân tích thống kê. Bạn có thể thực hiện tính toán các chỉ số đơn giản một cách nhanh chóng nhưng khi yêu cầu phức tạp và phải xử lý số lượng lớn đó là vấn đề. Với Python, tính toán thống kê được thiết kế để thực hiện một cách đơn giản thậm chí với một hoặc vài dòng lệnh cho cả tập dữ liệu phức tạp.
  • Làm việc với Excel theo mặc định làm ảnh hưởng tới tính toàn vẹn của dữ liệu gốc vì hầu hết các trường hợp bạn thực hiện chỉnh sửa ngay trên dữ liệu này. Việc này không có gì đáng nói cho đến khi bạn thực sự nhận ra tầm quan trọng của việc giữ cho dữ liệu gốc nguyên bản đối với những dự án có yêu cầu phức tạp. Sử dụng Python bạn chỉ tham chiếu đến dữ liệu gốc, quá trình xử lý được thực hiện riêng biệt, bạn có thể lưu đè file gốc nhưng đó không phải lựa chọn mặc định được khuyên dùng.
  • Biểu diễn dữ liệu trực quan với Excel mất nhiều công sức đề giữ cho giao diện đồ họa ổn định và đồng nhất, nó cũng tương đối hạn chế các loại biểu diễn dữ liệu so với các công cụ chuyên dụng để xây dựng dashboard. Python có số lượng thư viện hỗ trợ biểu diễn dữ liệu cực kỳ đa dạng. Biểu diễn dữ liệu với các mô tả được khai báo bằng dòng lệnh có nghĩa là bạn có thể thực hiện các điều chỉnh với biểu đồ như thay đổi cột dữ liệu biểu diễn trong khi giữ nguyên các cấu hình khác một cách ổn định và hiệu quả.

Những thách thức này không chỉ làm cho công việc kém hiệu quả, mất nhiều công sức để đạt được được mục tiêu bằng cách bám trụ với phương thức làm việc lỗi thời trong khi có lựa chọn khác thông minh hơn, ít tốn công sức hơn. Bạn sẽ chọn cách nào?

Sự xuất hiện của Python trong Excel kết hợp những điểm tốt nhất của hai công cụ bạn thích. Bạn không phải từ bỏ hoàn toàn công cụ Excel mình yêu thích nhưng vẫn có thể tận dụng năng lực xử lý dữ liệu mạnh mẽ của Python. Có rất nhiều thao tác công việc được thực hiện với python rất dễ dàng thay vì học thêm ngôn ngữ VBA gắn chặt với hệ sinh thái Microsoft mà vẫn không hiệu quả. Hãy cùng tìm hiểu thêm dưới đây.

II. Python trong Excel – Mở Cửa Sự Linh Hoạt

Microsoft thể hiện một sự linh hoạt và thực dụng trong việc giữ chân người dùng với sản phẩm Excel huyền thoại khi làm việc với Anaconda để đưa bản phân phối Python vào hệ sinh thái của mình. Bản thân tôi đã ít sử dụng Excel trong vòng 5 năm qua, thay vào đó dùng bộ công cụ Google Sheets kết hợp Python những năm gần đây thì hiện tại cài đặt Excel và sử dụng trở lại bởi tính năng Python trong Excel này.

Qua quá trình sử dụng và trải nghiệm sớm cũng như chia sẻ tới cộng đồng qua Youtube từ những ngày đầu khi hầu hết thông tin ở Việt Nam chủ yếu đăng lại thông báo của Microsoft mà thiếu trải nghiệm thực sự, tôi chia sẻ tới bạn đọc như sau.

2.1. Lợi ích của Python trong Excel

  • Không cần cài đặt phức tạp để sử dụng Python trong Excel. Cập nhật Excel mới nhất (phiên bản beta Microsoft 365 Insider) là đã có tích hợp Python, không cần thực hiện thiết lập gì thêm. Bạn không cần cài đặt Python để sử dụng với Excel, mọi phép tính toán với Python trong Excel được thực thi thông qua dịch vụ đám mây của Microsoft. Các thư viện phổ biến của Python đã được nạp sẵn để sử dụng với Excel thông qua hợp tác giữa Microsoft với Anaconda. Thậm chí bạn còn không cần phải thực hiện câu lệnh nạp các thư viện phổ biến như pandas, numpy vào môi trường làm việc vì đã được thiết lập sẵn để sử dụng.
  • Không cần phải chuyển đổi từ Excel sang các công cụ Python như Jupyter Notebook, Google Colab hay Visual Studio Code chỉ để thực hiện một số thao tác xử lý dữ liệu không quá phức tạp với Python nữa. Bạn chỉ cần làm việc với công cụ mình yêu thích và quen thuộc là Excel đã đủ. Trừ khi bạn muốn thực hiện dự án phức tạp với Python mới cần sử dụng công cụ chuyên dụng.
  • Tạo ra xuất phát điểm thuận lợi cho người dùng phổ thông tiếp cận với Python. Sự kết hợp hoàn hảo những điểm mạnh và loại trừ hạn chế của hai công cụ mạnh mẽ trong phân tích dữ liệu hiện tại giúp bạn dễ dàng để bắt đầu học Python ở mức độ giải quyết yêu cầu công việc một cách thực chiến thay vì “cày” quá sâu. Python không dễ học nhưng cũng không khó, bạn cần sự chú tâm và đầu tư công sức đáng kể để có thể làm chủ nó.
  • Python là ngôn ngữ đa dụng giúp bạn tối ưu giá trị cho công sức học của mình thay vì đầu tư vào VBA hoặc Google App Script cho Google Sheets. Tôi đã chọn học Python cho Phân tích dữ liệu cũng bởi lý do này, và việc này mở rộng các ứng dụng về tự động hóa, máy học, AI rộng mở là thực sự cải thiện hiệu quả công việc rất nhiều. Hơn nữa, còn gì tuyệt vời hơn là cảm thấy có thể làm việc một cách thông minh và tích cực với những công cụ mạnh mẽ bạn có trong tay?

2.2. Hạn chế của Python trong Excel

  • Chậm hơn đáng kể so với thao tác với môi trường Python nguyên bản trên máy tính hoặc Cloud. Việc Microsoft thực thi các câu lệnh Python thông qua server để đơn giản hóa quá trình cài đặt và tích hợp cho người dùng phổ thông tạo ra một điểm yếu đáng cân nhắc của cách tiếp cận này. Là một người quen sử dụng Python tôi cảm thấy khá mất thời gian chờ thực thi câu lệnh Python so với trải nghiệm Python đầy đủ khi phải làm việc với dữ liệu lớn, tuy nhiên nó có thể không phải là điều làm bạn khó chịu nếu bạn quen dùng Excel từ trước.
  • Tốn thời gian chờ đợi mỗi khi dữ liệu bảng tính xuất hiện thay đổi khiến các dòng lệnh excel phải tính toán lại tự động theo mặc định, nếu chuyển sang chế độ tính toán một phần (Partial) hoặc thủ công thì gây ra lỗi và hoạt động không chính xác.
  • Bản thử nghiệm giới hạn chỉ áp dụng cho hệ điều hành Windows. Điều này có nghĩa là người dùng hệ điều hành macOS nhất là ở các công ty công nghệ sẽ đứng ngoài cuộc chơi. Việc cắt giảm tính năng của Excel cho phiên bản macOS cũng là lý do thúc đẩy tôi chọn Python để sử dụng chính thức từ năm 2021.
  • Không thể sử dụng Python để kết nối internet hay đọc dữ liệu trên máy tính mà chỉ có thể đọc dữ liệu đã có trong môi trường excel hoặc kết nối qua Power Query. Việc này làm giảm đi khối lượng kiến thức phải học đáng kể cho người dùng mới nhưng đồng thời hạn chế khả năng tự động hóa workflow (luồng công việc) của bạn.
  • Excel bộc lộ sự kém hiệu quả trong xử lý dữ liệu dạng vector (hàng, cột một cách hàng loạt), tất nhiên việc sử dụng Table và Power Pivot hay Power Query giúp khắc phục phần nào nhưng mặc định, bạn làm việc với excel theo đơn vị là mỗi ô tính. Trong khi đó, làm việc với Python sẽ theo hướng xử lý dữ liệu hàng loạt dạng vector cực kỳ thuận tiện, phổ biến nhất là thư viện Pandas, Numpy.
  • Hạn chế số lượng thư viện được hỗ trợ chính thức. Anaconda thông báo có tới hơn 400 ứng dụng dược hỗ trợ cho Excel nhưng trang tài liệu chính thức của Microsoft chỉ mới liệt kê 20 thư viện mã nguồn mở được đề xuất sử dụng. Hy vọng trong thời gian tới sẽ có nhiều thư viện hơn được hỗ trợ chính thức vì môi trường python này trên Cloud nên bạn không có quyền tự ý cài đặt thư viện mình muốn.

III. Tóm lại, tôi nên làm gì với Python trong Excel?

  • Python trong Excel không giúp bạn chuyển hoàn toàn giải pháp sử dụng python sang hẳn Excel, cũng không biến bạn từ người dùng Excel thành người dùng “pro” của Python. Tuy nhiên sự xuất hiện của một sản phẩm cầu nối Python trong Excel giúp bạn tiến gần hơn đến việc sử dụng ngôn ngữ Python thực tế và đầy đủ trong tương lai.
  • Python là ngôn ngữ duy nhất đáng để học nhất trong năm 2023 cho phân tích dữ liệu dành cho bạn bởi bạn có thể dùng nó bất cứ ở đâu, được tích hợp trực tiếp trong nhiều sản phẩm phổ biến như Power BI, Power Query, Microsft Visual Studio Code, Google Colab, AWS/Google/Azure Cloud, vv . Thay vì học VBA, Google App Scripts thì Python đơn giản và mạnh mẽ hơn rất nhiều, bạn có thể sử dụng trên máy tính cá nhân, trên cloud, trong rất nhiều tác vụ. Học một được 10 là vậy đó.

IV. Hướng dẫn cài đặt và bắt đầu sử dụng Python trong Excel

 

4.1. Cập nhật phiên bản Excel tích hợp Python

Để sử dụng bản Excel beta có tích hợp Python, bạn cần đăng ký tham gia chương trình Microsoft 365 Insider.
Cách làm khá đơn giản, bạn có thể thực hiện ngay trong ứng dụng Excel hiện tại.
Từ Menu của Excel tìm đến mục File > Account để thao tác. Bạn cần tham gia chương trình Microsoft 365 Insider tại đây (nếu chưa thực hiện), sau đó chọn Update Now để cập nhật phần mềm Excel. Khi quá trình hoàn tất, bạn chỉ cần khởi động lại Excel để sử dụng.
Lưu ý bạn cần là người dùng có sử dụng thuê bao Microsoft 365, ít nhất là bản Personal cho cá nhân như tôi đang dùng.
Bạn có thể theo dõi video tôi hướng dẫn để hiểu rõ hơn. Microsoft cung cấp hướng dẫn sử dụng bằng tiếng Việt khá đầy đủ ở đây Bắt đầu với Python trong Excel – Hỗ trợ của Microsoft

Cách cập nhật phiên bản Excel tích hợp Python

4.2. Bắt đầu sử dụng Python trong Excel

 

4.2.1. Nhập câu lệnh Python vào ô Excel

Lần đầu tiên sử dụng, bạn có hai cách thực hiện:

  • Nhập =PY( để kích hoạt ô chứa lệnh Python.
  • Từ menu chọn mục Formula > Insert Python như trong hình. Bạn cũng có thể chọn thử nghiệm với các ví dụ mẫu mà Microsoft cung cấp để làm quen.
Nhập dòng lệnh Python vào Excel

 

4.2.2. Trình tự thực thi lệnh Python

Python trong Excel thừa hưởng đặc tính về trình tự thực hiện phép tính của Python từ trái qua phải, từ trên xuống dưới với các dòng lệnh. Đồng thời các lệnh được thực thi tuân thủ thêm nguyên tắc xuất hiện trong các ô Excel theo thứ tự từ trái qua phải, từ trên xuống dưới, từ worksheet bên trái sang worksheet bên phải theo đúng trình tự.
Điều này có nghĩa là nếu bạn nạp dữ liệu bảng tính vào đối tượng Pandas DataFrame có tên df để tính toán thì tốt nhất là đặt ô tính này ở phía bên trái và trên cùng là tốt nhất. Ví dụ bạn bắt đầu các công thức python ở một worksheet mới, nạp dữ liệu cho df bằng lệnh Python ở ô A1. Như vậy khi thực hiện các câu lệnh tiếp theo tham chiếu đến df ở các ô tính khác, bảng tính khác liền sau thì trình tự thực hiện lệnh được đảm bảo, và bạn không gặp báo lỗi.

4.2.3. Nhập lệnh Python trong Excel

  • Excel hỗ trợ gợi ý hàm và lệnh Python ở mức cơ bản tương tự như gợi ý hàm Excel. Trải nghiệm viết code Python trong Excel tất nhiên không mượt mà và thú vị bằng dùng Visual Studio Code cho Python chuyên dụng được.
  • Để xuống dòng bạn dùng phím Enter như mặc định.
  • Để thực thi lệnh thì sử dụng tổ hợp phím Ctrl + Enter.

4.4.4. Nạp bảng tính đầu tiên vào đối tượng Python

Pandas sẽ là lựa chọn phổ biến nhất để sử dụng cho các thao tác xử lý dữ liệu trong Python. Để tạo một đối tượng Pandas DataFrame để bắt đầu thực hiện các phép tính toán, ví dụ chọn đối tượng có tên biến là df.
Bạn thực hiện các thao tác như sau:

  • Chọn một ô tính và nhập =PY( viết hoa hay thường đều được
  • Chọn vùng dữ liệu bảng tính cần nạp cho đối tượng. Lúc này Excel tự động tạo công thức sử dụng hàm xl() để nạp dữ liệu cho bạn.
  • Tới đây bạn nhập thêm df = ngay phía trước công thức nạp bảng tính vừa nêu
  • Dùng tổ hợp phím Ctrl + Enter để thực thi câu lệnh.
    Lưu ý: Python trong Excel chấp nhận 4 dạng dữ liệu đầu vào bao gồm: Dải ô (Range), Dải ô được đặt tên (Name), Bảng (Table) và Power Query Connect (ví dụ đọc file csv từ ổ cứng).

4.4.5. Tạo mô tả thống kê mô tả dữ liệu với Python trong Excel như thế nào?

Để tạo thống kê mô tả cho tập dữ liệu, bạn có thể sử dụng phương thức (metod) describe của Pandas.
Trong ví dụ dưới đây, tôi có 2 sheets dữ liệu gồm sheets search_console_report mà các bạn đang xem chứa 54 truy vấn tìm kiếm ngẫu nhiên của người dùng tới website thinhvu.com thông qua Google trong tháng 2/2023 và sheet Queries chứa thông tin hiệu suất hiển thị (performance) của từ khóa. Tôi thực hiện phép merge 2 vùng dữ liệu từ 2 sheets này thành DataFrame có tên search_df ở ô E1. Như vậy, trong DataFrame này chứa thông tin được gộp từ hai bảng một cách tự động qua dòng lệnh mà không phải thực hiện phép VLOOKUP của Excel cho nhiều Cột rất tiện lợi.
Sau đó ở ô G1, tôi thực thi dòng lệnh tạo mô tả thống kê như trong hình.

Tạo thống kê mô tả dữ liệu với Python trong Excel

4.4.6. Biểu diễn dữ liệu trong Excel tích hợp Python như thế nào?

Bạn có thể sử dụng thư viện matplotlibseaborn hoặc chính pandas để biểu diễn dữ liệu theo kiểu đồ thị mình muốn. Khi chỉ biểu diễn dữ liệu đơn giản không tùy biến nhiều, thậm chí bạn chỉ cần 1 dòng lệnh duy nhất để thực hiện. Để tùy chỉnh kích thước của đồ thị biểu diễn được tạo ra bằng cách gộp nhiều ô tùy ý. Như vậy để có đồ thị trên, tổng cộng tôi sử dụng 2 dòng lệnh. Một lệnh để tạo ra đối tượng DataFrame có tên df, dòng lệnh thứ 2 để vẽ đồ thị. Cấu trúc lệnh cực kỳ đơn giản và dễ hiểu.

Biểu diễn dữ liệu với line plot sử dụng Matplotlib | Python trong Excel

4.4.7. Lựa chọn hiển thị đầu ra cho lệnh Python

Khi thực thi lệnh Python thì Excel trả về kết quả dưới dạng đối tượng Python (ví dụ DataFrame, Image, vv) hoặc giá trị Excel (Excel values). Bạn có thể lựa chọn hiển thị theo dạng rút gọn như mặc định hoặc hiển thị dưới dạng giá trị Excel để hiển thị giá trị của phép tính vào các ô tính Excel.

  • Ví dụ nếu kết quả trả về là 1 DataFrame, bạn không làm gì cả thì trong ô chứa phép tính hiển thị đối tượng DataFrame, nếu di chuyển chuột vào và click vào đối tượng thì sẽ xem trước dữ liệu. Khi chọn trả về dạng Excel values, dữ liệu sẽ được hiển thị tràn ra ngoài ô chứa phép tính để thể hiện bảng dữ liệu.
  • Với trường hợp thực hiện vẽ đồ thị, đối tượng trả về là Image, bạn chọn tùy chọn hiển thị là Excel values để hiện đồ thị trong ô này, sau đó lựa chọn 1 vùng ô để gộp lại và hiển thị đồ thị lớn hơn.
Lựa chọn kiểu hiển thị đối tượng đầu ra của Python trong Excel

V. Lời kết

Trên đây là những đánh giá từ trải nghiệm sử dụng thực tế Python trong Excel của tôi trong thời gian qua. Hy vọng các bạn có cái nhìn bao quát về những lợi ích và hạn chế của Python trong Excel cũng như hướng dẫn cơ bản để bắt đầu sử dụng.
Nếu bạn chưa sẵn sàng tham gia khóa học Phân tích dữ liệu với Python hoàn chỉnh thì có thể bắt đầu với Python trong Excel để làm quen và có cảm hứng theo đuổi việc nâng cấp kỹ năng phân tích dữ liệu với ngôn ngữ Python đa dụng.

https://learn.thinhvu.com/course/phan-tich-du-lieu-voi-python-trong-excel/

Hiện tại, tôi đã chuẩn bị sẵn khung chương trình cho khóa học Python trong Excel và đang cập nhật nội dung bài học cụ thể. Nếu bạn có nhu cầu học hoặc muốn biết thêm chi tiết thì có thể trao đổi thêm với tôi qua Messenger để được hỗ trợ.

Rate this post
Exit mobile version