Điều khiển WEB bằng VBA

Liên hệ QC

tdnhandno

Thành viên mới
Tham gia
10/3/16
Bài viết
47
Được thích
1
Mình đang làm điều khiển web bằng VBA, hiện tại đã đăng nhập được vào web rồi, nhưng khi thực thi lệnh Click thì web tạo 1 cửa sổ mới lên để làm việc và code báo lỗi (nguyên nhân do không tìm thấy ID vì ID đó nằm ở cửa số web mới tạo), có cách nào để code mình chuyển qua thực thi trên cửa sổ mới tạo ko ạ.
Sub dieu_khien_IE()
Dim obj As New WebDriver
obj.Start "Internetexplorer", ""
obj.Get "facebook.com/"
'Nhap ID & Pass
obj.FindElementById("logonuidfield").SendKeys ("test")
obj.FindElementById("logonpassfield").SendKeys ("Nopass")
obj.FindElementByName("uidPasswordLogon").Click
'thời gian chờ
Application.Wait DateAdd("s", 1, Now)
'lệnh Click để mở cửa sổ trang web mới
obj.FindElementById("bestFitViews_div").Click
Application.Wait DateAdd("s", 1, Now)
'các lệnh thực thi trên trang web mới (đến đây thì code báo lỗi
obj.FindElementById("bestFitViews_div").Click (code báo lỗi do không tìm thấy ID)
End Sub
 
Chấm bài cái học hỏi
 
Upvote 0
@ Chủ thớt:
Mình nêu mục đích CUỐI CÙNG là mình cần làm gì ấy.
 
Upvote 0
Chấm bài cái học hỏi
Có thể ấn vào "theo dõi" :D
1603966171121.png
Mình đang làm điều khiển web bằng VBA, hiện tại đã đăng nhập được vào web rồi, nhưng khi thực thi lệnh Click thì web tạo 1 cửa sổ mới lên để làm việc và code báo lỗi (nguyên nhân do không tìm thấy ID vì ID đó nằm ở cửa số web mới tạo), có cách nào để code mình chuyển qua thực thi trên cửa sổ mới tạo ko ạ.
Nghiên cứu UiPath thử xem bạn! (Mình đang mò mẫm)
 
Upvote 0
mình có tìm hiểu trên các trang mạng trong nước và nước ngoài thì chủ yếu là về lấy dữ liệu từ web về excel
đẩy dữ liệu từ excel lên web thì cũng có nhưng chỉ có trường hợp thực hiện trên 1 cửa sổ chứ mình chưa tìm thấy tài liệu về thực hiện trên cửa sổ mới tạo ra
có anh chị nào nghiên cứu về cái này cho e hướng dẫn e cách xử lý với ạ
Bài đã được tự động gộp:

Tôi cũng đang tìm hiểu nhưng thấy nó không tiện lắm,nên tôi đang tính tìm hiểu python :)
mình cũng từng nghĩ đến Python nhưng giờ cứ VBA xem mọi người có cách xử lý nào không đã :)
mình có mail cho Automation Agile (1 kênh chuyên về tự động hóa WEB) mà họ nói để nghiên cứu rồi sẽ hồi đáp :(
 
Lần chỉnh sửa cuối:
Upvote 0
mình cũng từng nghĩ đến Python
tại vì liên quan đến web muốn tối ưu cần một ngôn ngữ mạnh hơn để sau này có phát sinh thêm công việc cũng dễ xử lý..nhưng ,trước mắt nếu có thể dùng bằng vba thì cũng dùng đỡ phức tạp hơn thôi còn về tối ưu và lâu dài thì có được ngôn ngữ mạnh thì hay hơn hihi
 
Upvote 0
Bạn đọc qua bài viết này trước xem sao

 
Upvote 0
tại vì liên quan đến web muốn tối ưu cần một ngôn ngữ mạnh hơn để sau này có phát sinh thêm công việc cũng dễ xử lý..nhưng ,trước mắt nếu có thể dùng bằng vba thì cũng dùng đỡ phức tạp hơn thôi còn về tối ưu và lâu dài thì có được ngôn ngữ mạnh thì hay hơn hihi
bạn có thể cho mình mail hoặc sdt để có gì trao đổi thêm không :)
 
Upvote 0
Rồi sau đó làm gì tiếp mình? Đây đâu phải cuối cùng.
Cuối cùng tức là cái chót chét, nơi mà mình không làm gì nữa ấy.
Nhưng mà anh có hứa là giúp em đoạn code chạy siêu tốc độ không thì em mới nói, chứ anh cho em code VBA siêu chậm chạp thì em hổng dám nhận đâu à, tội em :(
 
Upvote 0
Rồi sau đó làm gì tiếp mình? Đây đâu phải cuối cùng.
Cuối cùng tức là cái chót chét, nơi mà mình không làm gì nữa ấy.
Rồi sau đó làm gì tiếp mình? Đây đâu phải cuối cùng.
Cuối cùng tức là cái chót chét, nơi mà mình không làm gì nữa ấy.
là mình sẽ đẩy dữ liệu lên cửa sổ mới sinh ra đó a
 
Upvote 0
Nhưng mà anh có hứa là giúp em đoạn code chạy siêu tốc độ không thì em mới nói, chứ anh cho em code VBA siêu chậm chạp thì em hổng dám nhận đâu à, tội em :(
Dạ. Chậm từ từ thôi chị xinh đẹp. Em muốn nhanh hơn cũng hổng được, cái máy tính đời cổ nhà em mỗi khi chạy cái gì nặng là quạt kêu như công nông đầu dọc leo dốc.

Mà siêu tốc độ em cũng sợ ăn chuối cả nải lắm. :(
 
Upvote 0
xin lỗi xóa bài vì ko phù hợp ... ai đi qua xóa dùm luôn cho sạch
 
Lần chỉnh sửa cuối:
Upvote 0
Mình đang làm điều khiển web bằng VBA, hiện tại đã đăng nhập được vào web rồi, nhưng khi thực thi lệnh Click thì web tạo 1 cửa sổ mới lên để làm việc và code báo lỗi (nguyên nhân do không tìm thấy ID vì ID đó nằm ở cửa số web mới tạo), có cách nào để code mình chuyển qua thực thi trên cửa sổ mới tạo ko ạ.
Sub dieu_khien_IE()
Dim obj As New WebDriver
obj.Start "Internetexplorer", ""
obj.Get "facebook.com/"
'Nhap ID & Pass
obj.FindElementById("logonuidfield").SendKeys ("test")
obj.FindElementById("logonpassfield").SendKeys ("Nopass")
obj.FindElementByName("uidPasswordLogon").Click
'thời gian chờ
Application.Wait DateAdd("s", 1, Now)
'lệnh Click để mở cửa sổ trang web mới
obj.FindElementById("bestFitViews_div").Click
Application.Wait DateAdd("s", 1, Now)
'các lệnh thực thi trên trang web mới (đến đây thì code báo lỗi
obj.FindElementById("bestFitViews_div").Click (code báo lỗi do không tìm thấy ID)
End Sub
Bạn thử tăng thời gian chờ lên để element được load hết thử xem
 
Upvote 0
Rồi sau đó mình làm gì tiếp?

Mình đăng bài tự động lên Facebook hả? Hay mình muốn làm gì cuối cùng?
trang web e đẩy lên là web nội bộ, chủ yếu là e đẩy dữ liệu lên web và lưu lại
cũng 1 dạng như đăng bài tự động lên face mà a đã nói đó a
Bài đã được tự động gộp:

Bạn thử tăng thời gian chờ lên để element được load hết thử xem
e cũng đã nghĩ chắc do chưa load đủ nên ko tìm thấy ID, đã kéo dài thời gian chờ lên nhưng cũng ko có tác dụng ạ :(
 
Upvote 0
Web KT
Back
Top Bottom