Lấy dữ liệu từ Web vào Excel bằng VBA

Bích Trâm

Bích Trâm

Tác giả bài viết

Ngày đăng

Friday 17/03/2023 - 15:44

Featured blog post

Lấy dữ liệu từ Web vào Excel bằng VBA

I. Lấy dữ liệu từ trang web vào Excel là gì ? Tại sao ?

Lấy dữ liệu từ trang web vào Excel là quá trình lấy dữ liệu từ trang web hoặc cơ sở dữ liệu trực tuyếnnhập dữ liệu đó vào bảng tính Excel.

Lợi ích của việc này:

  • Trích xuất được một lượng lớn dữ liệu từ các trang web và cơ sở dữ liệu, sau đó có thể phân tích và thao tác trong Excel để xác định các mẫu, xu hướng và thông tin chuyên sâu.
  • Dữ liệu từ các trang web và cơ sở dữ liệu trực tuyến có thể được kéo vào Excel và được sử dụng để tạo các báo cáo và hình ảnh trực quan dễ hiểu và dễ chia sẻ.
  • Tự động nhập dữ liệu từ các nguồn dữ liệu, tiết kiệm thời gian và giảm nguy cơ mắc lỗi liên quan đến nhập dữ liệu thủ công.
  • Bằng cách nhập dữ liệu từ các trang web và cơ sở dữ liệu khác nhau vào Excel, bạn có thể so sánh và đối chiếu các bộ dữ liệu khác nhau để hiểu sâu hơn về thông tin.

II. Cách đặt mật khẩu cho VBA trong Excel

Đầu tiên bạn phải có thẻ Developer trong Excel Mở thẻ Developer và lưu file

Bước 1: Mở cửa sổ VBA

Trong thẻ Developer  => nhóm Code => chọn Visual Basic

Hoặc bạn nhấn ALT + F11 để mở Visual Basic

Bước 2: Tạo Module mới

Trong bảng Visual Basic => chọn Insert trong thanh menu => chọn Module

Bước 3: Thêm mã VBA Sao chép và dán mã VBA sau vào module:

Sub ScanData()

    ' Create an instance of Internet Explorer

    Dim IE As Object

    Set IE = CreateObject("InternetExplorer.Application")

    ' Navigate to the web page

    IE.Visible = True

    IE.Navigate "https://www.example.com/data"

    Do While IE.Busy Or IE.ReadyState <> 4

        DoEvents

    Loop

    ' Extract the data

    Dim MyData As String

    MyData = IE.document.getElementsByTagName("td")(0).innerText

    ' Display the data in a message box

    MsgBox MyData

    ' Clean up

    IE.Quit

    Set IE = Nothing

End Sub

Chú thích các mã code :

Dòng này xác định phần đầu của một macro mới có tên là "ScanData".

Thao tác này tạo một phiên bản mới của ứng dụng Internet Explorer và gán nó cho biến IE.

Những dòng này điều hướng ứng dụng Internet Explorer đến URL được chỉ định và đợi trang tải xong trước khi tiếp tục.

 

Những dòng này trích xuất văn bản từ phần tử ô bảng đầu tiên (td) trên trang và gán nó cho biến MyData.

 



 

Điều này sẽ hiển thị giá trị của biến MyData trong hộp thông báo.

Những dòng này đóng ứng dụng Internet Explorer và dọn sạch mọi tài nguyên được sử dụng bởi macro.
 

Bước 4: Cập nhật URL của trang web

Thay thế " https://www.example.com/data " trong mã bằng URL của trang web mà bạn muốn quét.

Bước 5: Chạy macro

Nhấn vào nút Reset (ô vuông) => nhấp vào nút "Run" trong trình chỉnh sửa VBA để chạy macro.

Bước 6: Quan sát kết quả Quan sát kết quả quét dữ liệu,

kết quả này sẽ được hiển thị trong hộp thông báo. Kết quả cụ thể sẽ phụ thuộc vào dữ liệu bạn đang quét trên trang web.

Bước 7: Đóng ứng dụng Internet Explorer

Sau khi quá trình quét hoàn tất, ứng dụng Internet Explorer sẽ vẫn mở. Đóng nó theo cách thủ công hoặc thêm mã bổ sung vào macro để tự động đóng nó.

Hãy xem kỹ và bám sát theo hướng dẫn của Excelpython nhé. Bạn sẽ tạo và chạy một bản Macro trong Excel một cách dễ dàng.

Nếu thấy hay hãy chia sẽ cho bạn bè cùng xem nhé !

Bạn có bài hướng dẫn này hữu ích không?

Top of Form