1. Tải bản cài đặt AutoIT mới nhất

    Chào Khách. Nếu bạn mới tham gia và chưa cài đặt AutoIT.
    Vui lòng vào topic trên để tải bản AutoIT mới nhất nhé
    Dismiss Notice
  2. Quy định và nội quy

    Chào Khách. Vui lòng đọc kỹ nội quy và quy định của diễn đàn
    Để tránh bị ban một cách đáng tiếc nhé!
    Dismiss Notice
  3. Hướng dẫn chèn mã AutoIT trong diễn đàn

    Chào Khách. Vui lòng xem qua bài viết này
    Để biết cách chèn mã AutoIT trong diễn đàn bạn nhé :)
    Dismiss Notice

Hỏi đáp Xin các bác trợ giúp về code để Copy và Paste excel

Thảo luận trong 'Thảo luận chung - Hỏi đáp' bắt đầu bởi Phong Hoàng, 30/5/22.

  1. Phong Hoàng

    Phong Hoàng Thành viên mới
    • 1/6

    Tham gia ngày:
    30/5/22
    Bài viết:
    3
    Đã được thích:
    1
    Xin chào các bác
    Hiện em có 1 vấn đề này nhờ các bác giúp đỡ ah
    Hàng ngày em phải copy dữ liệu từ file Exel lên trang web với số lượng lớn,em ko biết gì về autoit nên em chỉ biết dùng code Send("^c") và Send("^v")
    Tuy nhiên ở 1 số ô trống,trang WEB nó ko cho dùng Ctrl V mà phải làm như hình:
    [​IMG]

    Em có chèn thêm 1 số code là :
    Send("{APPSKEY}")
    Sleep(20)
    Send("P")
    Sleep(20)
    Send("{TAB}")

    nhưng em thấy làm như vậy thì thỉnh thoảng hay bị lỗi (Auto chạy bị sai lệch)
    Nên em xin nhờ các bác xem liệu có cách nào thay thế đoạn CODE dùng Send("{APPSKEY}")... đc ko ?
    Nếu không thì các bác có đoạn code nào để đợi ấn xong Key rồi nó mới chạy tiếp không ah.Ví dụ như đợi ấn xong Send("{APPSKEY}") rồi mới chạy tiếp Send("P")....
    Xin các bác gúp em ah
     
  2. aiaiai141

    aiaiai141 Thành viên mới
    • 3/6

    Tham gia ngày:
    14/7/20
    Bài viết:
    2
    Đã được thích:
    1
    Chỉnh sửa cuối: 31/5/22
    Phong Hoàng thích bài này.
  3. Phong Hoàng

    Phong Hoàng Thành viên mới
    • 1/6

    Tham gia ngày:
    30/5/22
    Bài viết:
    3
    Đã được thích:
    1
    Quá hay bác ơi,đúng cái em cần,tks bác nhiều nhé
    ah nhưng mà bác có cách nào lấy giữ liệu từ 1 ô trong Excel để thay cho CLiput ("123456") ko ah
     
  4. Phong Hoàng

    Phong Hoàng Thành viên mới
    • 1/6

    Tham gia ngày:
    30/5/22
    Bài viết:
    3
    Đã được thích:
    1
    Chào các bác,sau 1 thời gian mày mò thì em đã tìm được cách để tải dữ liệu từ Excel lên trang Web đúng theo thứ tự mà ko cần Copy và Paste tuy nhiên niềm vui ngắn chẳng tày gang.Em chỉ tải được 1 dòng từ Excel lên trang Web (theo cách người ta làm Auto Login),em cần tải nhiều dòng lên Web thế nhưng các ô trống theo các cột trên Web đều có chung 1 tên,chẳng hạn cột "Damage CODE" thì name = "DamageCedexCode"....nên em chỉ có thể tải đc 1 dòng lên trang Web
    Exel của em có 3 dòng như này
    [​IMG]

    Nhưng em chỉ tải lên Web đc 1 dòng đầu tiên

    [​IMG]

    [​IMG]

    Các bác có ai biết làm cách để tải được các dòng còn lại ở Exel lên các ô trắng trên WEB xin chỉ giúp em với ah
    Code của em như dưới :

    Mã (AutoIt):
    #include <excel.au3>
    #include <IE.au3>

    Call ("signIn")

    Func SignIn ()

    Local $var ="C:\Users\Mr.Thang\Desktop\MAE.xlsx"
    Local $oExcel_1 = _Excel_Open()
    Local $oWorkbook = _Excel_BookOpen($oExcel_1,$var)
    Local $_readDMG = _Excel_RangeRead ($oWorkbook,"COVER","B8")
    Local $_readRP = _Excel_RangeRead ($oWorkbook,"COVER","C8")
    Local $_readLOCA = _Excel_RangeRead ($oWorkbook,"COVER","D8")
    Local $_readPCS = _Excel_RangeRead ($oWorkbook,"COVER","E8")
    Local $_readMAT = _Excel_RangeRead ($oWorkbook,"COVER","F8")
    Local $_readHOUR = _Excel_RangeRead ($oWorkbook,"COVER","G8")
    Local $_readTPI = _Excel_RangeRead ($oWorkbook,"COVER","H8")
    Local $_readDMG1 = _Excel_RangeRead ($oWorkbook,"COVER","B9")


    Global $oIE  = _IECreate ("https://mercplus.maerskline.com/ManageWorkOrder/ManageWorkOrder?IsMulti=False")
    WinWaitActive("Manage Work Order - Internet Explorer")

    Local $dmg  = _IEGetObjByName ($oIE,"DamageCedexCode")
    Local $RP  = _IEGetObjByName ($oIE,"RepairCod")
    Local $loca  = _IEGetObjByName ($oIE,"CedexCode")
    Local $pcs  = _IEGetObjByName ($oIE,"Pieces")
    Local $mat  = _IEGetObjByName ($oIE,"MaterialCost")
    Local $hour  = _IEGetObjByName ($oIE,"ManHoursPerPiece")
    Local $tpi  = _IEGetObjByName ($oIE,"Tpi")


    _IEFormElementSetValue ($dmg,$_readDMG)
    _IEFormElementSetValue ($RP,$_readRP)
    _IEFormElementSetValue ($loca,$_readLOCA)
    _IEFormElementSetValue ($pcs,$_readPCS)
    _IEFormElementSetValue ($mat,$_readMAT)
    _IEFormElementSetValue ($hour,$_readHOUR)
    _IEFormElementSetValue ($tpi,$_readTPI)




    EndFunc
     
    Chỉnh sửa cuối: 4/7/22
    Tungtata thích bài này.

Chia sẻ trang này

Đang tải...