Lập trình VBA Liên kết dữ liệu từ website vào Excel với QueryTable



Hướng dẫn lập trình VBA để lấy dữ liệu từ website vào Excel với đối tượng QueryTable. Dữ liệu lấy dạng table có ID.
(*) Bài giảng lập trình VBA cơ bản:
(*) Mã nguồn:
‘——-CODE——–
‘Author: Nguyen Duy Tuan –
Sub LayTableTuWeb()
Dim qry As QueryTable
Dim sh As Worksheet
Dim CnnStr As String

Set sh = ThisWorkbook.Sheets(“Webtable”)
‘Xoa querytable truoc do
XoaQT sh

CnnStr = “URL;
Set qry = sh.QueryTables.Add(CnnStr, sh.Range(“A5”))
‘Query
qry.WebSelectionType = xlSpecifiedTables
qry.WebFormatting = xlWebFormattingNone
qry.WebTables = “””tblStats””,””tblData””” ‘Tat ca cac table
qry.Refresh ‘Load du lieu
End Sub

Sub XoaQT(sh As Worksheet)
Dim qry As QueryTable
On Error Resume Next ‘Bo qua loi
For Each qry In sh.QueryTables
qry.ResultRange.ClearContents ‘Xoa data trong vung table
qry.Delete ‘Xoa QueryTable
Next
End Sub
‘——END COPY——-

Nguồn: https://tructiepxosomega.com/

Xem thêm bài viết khác: https://tructiepxosomega.com/cong-nghe/

All Comments

  • Bạn ơi nếu website đó có tài khoản mới đăng nhập và xem được thì mình phải xử lý thế nào ạ?

    Châu Tâm June 17, 2020 3:47 am Reply
  • Rất cám ơn anh ạ! Anh cho em hỏi ví dụ trong link: https://s.cafef.vn/Lich-su-giao-dich-VNINDEX-1.chn#data . Em muốn load data quá khứ của các trang thứ 2,3,4,5 thì làm như nào ạ?

    Thanh Nguyen June 17, 2020 3:47 am Reply
  • cảm ơn bác, bác có khóa học chuyên sâu dạy về lập trình lấy dữ liệu từ web không ạ?

    Van Thang Nguyen June 17, 2020 3:47 am Reply
  • Chào thầy, em làm thử bảng giá chứng khoán từ trang https://www.cophieu68.vn/stockonline.php?stcid=1 không được, luôn báo lỗi sau : "This web query returned no data. To change the query, click OK, click arrow on the name box in the formula bar, click the name of the external data range for the Web query, right-click the selection, and then click Edit Query". Nhờ thầy chỉ giúp. Thanks thầy

    james le June 17, 2020 3:47 am Reply
  • Thank you bác

    Đức Công June 17, 2020 3:47 am Reply
  • nếu dữ liệu đó thành nhiều trang thì sao bác?

    Lão Trịnh June 17, 2020 3:47 am Reply
  • Thầy ơi, Thầy có thể hướng dẫn liên kết lấy dữ liệu của báo cáo tài chính, các bảng cập nhật theo điều kiện mã chứng khoán từ website được không thầy? Giống như excel platform của fireant đấy ạ?

    Minh Hoàng June 17, 2020 3:47 am Reply
  • Chào thầy,
    Em lấy dữ liệu từ địa chỉ này: https://s.cafef.vn/screener.aspx#data chỉ lấy được mỗi cái tiêu đề của bảng. Với nếu em cần lấy thêm các href (hyperlink) của mỗi mã chứng khoán, thì có dùng Query Table được không thầy? Nếu có cách nào để vừa lấy được bảng & lấy được hyperlink thầy chỉ giúp em? Cảm ơn thầy. Thành

    Kiều Công Thành June 17, 2020 3:47 am Reply
  • Tại sao khi chạy thì báo lỗi tại " Set sh = ThisWorkbook.Sheets("Webtable")"
    Subscript out of range

    Dương Hiệp June 17, 2020 3:47 am Reply
  • Anh có thể hướng dẫn thêm khi thay đỗi mã CK sẽ xuất dữ liệu tương ứng với mã CK đó được không ạ

    Nam Cao June 17, 2020 3:47 am Reply
  • Trường hợp web phải đăng nhập vô trước thì làm thế nào thầy?

    Văn Lưu Tạ June 17, 2020 3:47 am Reply
  • Cảm ơn anh vì video rất hay
    Anh cho em hỏi thêm nếu muốn cập nhật mã cp mới thì làm như thế nào ạ

    trí Võ Trần June 17, 2020 3:47 am Reply
  • Cảm ơn anh đã chia sẻ.
    Anh có thể hướng dẫn liên kết lấy dữ liệu của báo cáo tài chính xuống excel được không ạ.

    Trung Tien June 17, 2020 3:47 am Reply

Leave a Reply

Your email address will not be published. Required fields are marked *