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——-
Trường hợp mở trang bảng giá của cafef, table đã có id nhưng không lấy được dữ liệu các mã chứng khoán mà chỉ lấy được các tên tiêu đề " mua, bán khối lượng" là sao vậy admin nhỉ. Dữ liệu của mã thì nó không lấy được.
em muốn dùng vba trong excel để lấy dữ liệu trong google sheet thầy ơi
Addmin đâu? Làm ơn Xin trả lời câu hỏi của mh bên dưới giúp. Mh đang cần trợ giúp
Cho mh xin link video của bạn hướng dẫn về cách lấy biểu đồ đồ thị từ web về excel đi bạn? Quá nhiều video mh k biết cái video nào của bạn có hướng dẫn vấn đề đó
Thầy ơi,cho em hỏi,Em đang phải nhập dữ liệu từ Excel lên trang Web.Có cách nào để truyền dữ liệu từ Excel lên trang Web mà ko cần copy và paste ko ạ
Làm thế nào lấy dữ liệu web 2s cập nhật 1 lần ạ
Trang web có mật khẩu thì có được không á thầy
a cho em hỏi trong excel nó có khách không cần dùng code vẫn lấy đc dữ liệu sao lại phải dùng cách này ạ
Chào bạn mình muốn làm một bản exl cập nhật trực tiếp dạng như bạn hướng dẫn mình liên lạc với bạn để làm được ko .
Thực chiến hay quá, cảm ơn bạn !
Cám ơn Thầy về mã code, cho e hỏi thêm nếu ta muốn lấy Data của nhiều mã thì sao ah. Xin Thầy hướng dẫn ah. Cám ơn Thầy
À e làm được rồi. Mà ko biết hình ảnh ấy nó có tự cập nhật không. Hôm nào a có phương pháp trong excel mà chỉ cần rê chuột đến ô đó nó liền hiện 1 hình ảnh mặc định theo link nào đó thì chia sẻ tụi e với nha
A ơi sao e dùng ad in a tool lấy ảnh về từ cafef thì nó lỗi : this image cannot currently be displayed. Là nó bị gì ?!
Với 1 table mà ko có id chỉ có table class thì lấy dữ liệu bằng cách nào ạ?
Kỹ sư có cách giảng rất hay, có trình độ sư phạm nên khá dễ hiểu.
Anh cho hỏi thêm, tại sao một Table khác cũng trên Cafef tại địa chỉ:
https://s.cafef.vn/screener.aspx#data
nhưng lại không thể lấy được table. Có phải vì họ sử dụng Json data phải không ạ? cách làm như thế nào để lấy được số liệu trên table này (có id là mytable) bằng VBA, anh có thể chỉ giúp không? xin cám ơn anh.
Dạ anh ơi nhỡ table mà ko có Id chỉ có Class thôi thì mình lấy như thế nào ạ ? Mong anh reply em sớm nha, em cảm ơn minhnhut1103@gmail.com
Great channel!
Chào Admin, em đang rất cần cách lấy dư liệu dạng biểu đồ ở các web vào excel nhưng em ko rõ là Ad nói ở bài nào. Ad có thể cho em xin link để xem ko. Em cảm ơn Ad và mong nhận được phản hồi từ Ad
Chào anh cho em hỏi xíu. Em chỉ muốn lấy dữ liệu từ một web đang được mở được không ah. Chứ k phải là phải mở web đó từ excel rùi mới lấy dữ liệu
Bài giảng hay quá. Cảm ơn anh. Anh cho em hỏi thêm, e muốn đưa bảng table về, nhưng về 1 mảng thì làm như thế nào?
Ko thấy id, giờ mình muốn làm 1 ô nhập mã cp thì có đc ko
chạy không được nó cứ báo lỗi ở dòng : Set sh = ThisWorkbook.Sheets("webtable")
Cảm ơn anh, nếu website cần tên đăng nhập và mật khẩu thì mình làm thế nào ạ? cảm ơn anh nhiều ạ.
Chào thầy. Thầy cho em hỏi chút. dữ liệu web có nhiều trang và liên tục update. dữ liệu kỳ mới nhất sẽ đẩy dữ liệu kỳ cũ sang trang sau. người dùng phải bấm nút tiến thì mới vào được trang sau để đọc dữ liệu cũ. Vậy. câu hỏi là, khi em liên kết excel với trang đầu của web. khi dữ liệu của web update thì có cách nào dữ liệu cũ trên bảng excel sẽ lùi xuống các hàng dưới, nhường vị trí cho dữ liệu mới hiển thi trên excel ko ạ. Em cảm ơn thầy.
Anh làm video chỉ cách search mã chứng khoán trên êxcel xong nó tự động hiện ra báo cáo tài chính được m a. Tks a
video rất hữu ích cảm ơn ad nhé
A Tuan cho gợi ý giúp mình thêm đó là: trên webtable kia a lấy được dữ liệu của VCB, vậy nếu muốn lấy của mã khác như TCB chẳng hạn, có thể làm 1 cho phép nhập thêm: Mã chứng khoán vào đó. Rồi ấn nút" Load table " rồi trả lại kết quả mã mới vào ô A5 thay thế cho VCB . Mong được anh gợi ý cách làm ah.
Đầu tiên cảm ơn anh rất nhiều
cho em hỏi tý ví dụ lấy nhiều trang thì làm thế nào
https://s.cafef.vn/Lich-su-giao-dich-VCB-1.chn
Trong trường hợp muốn lấy bảng từ ngày A tới ngày B theo ý của mình thì sẽ thay đổi code thế nào ạ
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 ạ?
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 ạ?
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 ạ?
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
Thank you bác
nếu dữ liệu đó thành nhiều trang thì sao bác?