Xin giúp đỡ về sự kiện chạy application khác từ excel
Mình đang lập trình việc tự động tải dữ liệu từ hệ thống quản lý của công ty xuống. Vì việc truy xuất trực tiếp vào cơ sở dữ liệu là không được phép nên tính cách dùng sự kiện sendkeys để gửi lệnh download.
Tuy nhiên cách này có phần không ưng vì khi file hoạt động, không thể sử dụng được máy tính cho cộng việc khác vì nó đang mở ứng dụng rồi sendkeys …Mình muốn hỏi có cách nào thực hiện việc sendkeys sang application khác để load dữ liệu mà nó chạy ẩn dưới tray không? để mình có thể sử dụng máy tính trong khi chương trình tải dữ liệu đang hoạt động.
Xin cảm ơn mọi người đã đọc bài
Đã send key thì không ẩn được nhé, vậy nên đã tranh thủ thì nên để máy tính còn làm, tránh bắt nó làm việc khác trong khi mong muốn làm đúng việc mình đang giao, sao làm?
Ý mình là cơ sở dữ liệu của oracle, nó cho mình tải dữ liệu qua phần mềm của nó và có cung cấp username/ Pass. Mình muốn nói trực tiếp ở đây là lấy thẳng dữ liệu trong cái Oracle mà ko qua phần mềm của nó.
Vì không link được như vậy nên mới phải dùng 1 cái tool gì đó để sendkeys mà không mong muốn sự kiện sendkeys vào phần mềm kia hiện lên trên cửa sổ làm việc cho nó gọn.
nếu vba không làm được thì mình nên dùng ngôn ngữ nào nhỉMình có thể sử dụng ngôn ngữ lập trình nào để làm việc đó nhỉ? Mọi người nếu biết xin chia sẻ giúp ah
Nếu có username và password thì dùng power query
Oracle chỉ là bên cung cấp dịch vụ đám mây thôi bạn à. Cái quan trọng là bạn đang dùng cái chương trình gì trên dịch vụ đám mây kia.
Mình cũng làm việc nhiều với mấy cái dịch vụ của Oracle rồi, bảo mật 2 lớp các kiểu vẫn vào lấy dữ liệu bình thường.
Captcha mình còn vượt qua hàng loạt được cơ mà.
Vậy nên mới kêu bạn gửi thông tin chi tiết.
Báo cáo, mình đã hỏi em GPT và em ấy hướng dẫn như này ah:
Cái này để ẩn cửa sổ làm việc điDeclare Function ShowWindow Lib "user32" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Declare Function SetForegroundWindow Lib "user32" (ByVal hWnd As Long) As Long Sub HideWindow() Dim hWnd As Long hWnd = FindWindow(vbNullString, "cửa sổ làm việc") If hWnd Then ShowWindow hWnd, 3 End If End SubCái này để sendkeys sang cửa sổ làm việc
Sub SendKeysExample() Dim hWnd As Long hWnd = FindWindow(vbNullString, "Cửa sổ làm việc") If hWnd Then SetForegroundWindow hWnd SendKeys "{F2}" Application.Wait (Now + TimeValue("0:00:01")) SendKeys "{ENTER}" End If End Subkết quả là sendkeys được và tải được dữ liệu, giờ mình chỉ cần ẩn em excel đi nữa là xong. Cảm ơn mọi người đã đọc bài
www.giaiphapexcel.com/diendan/threads/xin-gi%C3%BAp-%C4%91%E1%BB%A1-v%E1%BB%81-s%E1%BB%B1-ki%E1%BB%87n-ch%E1%BA%A1y-application-kh%C3%A1c-t%E1%BB%AB-excel.163988/#post-1094710
Học Nhân sự Tổng hợp – Trở thành chiến binh nhân sự vững nghiệp vụ
Con người là một trong những yếu tố quan trọng của công ty, là tài sản quý giá của doanh nghiệp. Chính vì thế,...
Xem khóa học
Bình luận