1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. psjunkey

Beiträge von psjunkey

  • Excel Zellen auslesen und Dateien öffnen

    • psjunkey
    • 6. Mai 2015 um 19:02

    Vielen Dank Silvermoon und KriZza,

    ich habe die Funktion zum laufen bekommen:

    [autoit]


    #include <Array.au3>
    #include <Excel.au3>
    #include <MsgBoxConstants.au3>

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    ; Create application object and open an example workbook
    Local $oAppl = _Excel_Open()
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeRead Example", "Error creating the Excel application object." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    Local $oWorkbook = _Excel_BookOpen($oAppl, @ScriptDir & "\test2.xlsx")
    If @error Then
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeRead Example", "Error opening workbook '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oAppl)
    Exit
    EndIf

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    ; *****************************************************************************
    ; Read data from a single cell on the active sheet of the specified workbook
    ; *****************************************************************************
    Local $sResult = _Excel_RangeRead($oWorkbook, Default, "A1")
    Local $sResult2 = _Excel_RangeRead($oWorkbook, Default, "B1")
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeRead Example 1", "Error reading from workbook." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    $sResult = StringTrimLeft($sResult,3)
    $sResult = StringTrimRight($sResult,4)
    $sResult2 = StringTrimLeft($sResult2,3)
    $sResult2 = StringTrimRight($sResult2,4)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    for $i = string($sResult) to string($sResult2)
    ;~ $exec = ShellExecute(@ScriptDir & "\IV_"&$i&".bmp")
    shellexecute("IV_000"&$i&".bmt", "", @SW_HIDE)
    Next
    Sleep(20000)
    Func _Au3RecordSetup()
    Opt('WinWaitDelay',100)
    Opt('WinDetectHiddenText',1)
    Opt('MouseCoordMode',0)
    Local $aResult = DllCall('User32.dll', 'int', 'GetKeyboardLayoutNameW', 'wstr', '')
    If $aResult[1] <> '00000407' Then
    MsgBox(64, 'Warning', 'Recording has been done under a different Keyboard layout' & @CRLF & '(00000407->' & $aResult[1] & ')')
    EndIf

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    EndFunc

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    Func _WinWaitActivate($title,$text,$timeout=0)
    WinWait($title,$text,$timeout)
    If Not WinActive($title,$text) Then WinActivate($title,$text)
    WinWaitActive($title,$text,$timeout)
    EndFunc

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    _AU3RecordSetup()
    #endregion --- Internal functions Au3Recorder End ---
    ;*************************************************************************************************
    ;Ab hier startet meine Automatisierung. habe einfach die Mouseklicks automatisiert. Bevor ich den Ablauf gestartet habe, habe die Nummer des späteren PDF mit STRG+C in
    ;den Zwischenspeicher gelegt und dann die ensprechenden Bilder händisch heraus gesucht.
    ;****************************************************************************************************
    _WinWaitActivate("testo IRSoft Software","")
    MouseClick("left",164,42,1)
    _WinWaitActivate("testo IRSoft Software","")
    MouseClick("left",59,100,1)
    _WinWaitActivate("Berichtsassistent","")
    MouseClick("left",108,53,1)
    MouseClick("left",497,211,1)
    MouseMove(460,57)
    MouseDown("left")
    MouseMove(461,50)
    MouseUp("left")
    MouseClick("left",289,102,1)
    ;Hier wird die Dokumentnummer mit STRG+V eingefügt
    Send("{CTRLDOWN}a{CTRLUP}{CTRLDOWN}v{CTRLUP}")
    MouseClick("left",578,54,1)
    Sleep(10000)
    _WinWaitActivate("Berichtsassistent", "PDF")
    MouseClick("left",97,83,1)
    _WinWaitActivate("Speichern des Berichts als PDF Datei ...","")
    MouseClick("left",452,451,1)
    _WinWaitActivate("Berichtsassistent","")
    MouseClick("left",608,667,1)
    _WinWaitActivate("Frage 1004","")
    MouseClick("left",300,156,1)
    _WinWaitActivate("testo IRSoft Software","")
    MouseClick("left",1276,8,1)

    [/autoit]

    Könnt ihr mir noch helfen das ganze zu automatisieren?

    Die Excelliste sieht wie im Beitrag oben aus.
    Zelle C1 Soll der Dokumentname geben bisher wurde dieser mit STRG+C kopiert und in meiner Mouseklickautomatisierung mit STRG+ V an der richtigen stelle eingefügt. Anschließend sollen die entsprechenden Bilder von bis geöffnet werden. Dann die Mouseklickautomatisierung ausgeführt werden.
    Anschließen soll es bei C2 weiter gehen un dass ganze soll durchlaufen bis in Spalte C keine daten mehr sind.


    Wäre cool ihr mir noch mal helfen könntet.

  • Excel Zellen auslesen und Dateien öffnen

    • psjunkey
    • 5. Mai 2015 um 18:30

    Hallo KriZza,
    habe dein file bei mir ausprobiert
    Leider wird nur die excel Datei geöffnet.

    in Zeile 29 bis 32 gebe ich den Ort der Bilddateien an?

  • Excel Zellen auslesen und Dateien öffnen

    • psjunkey
    • 5. Mai 2015 um 14:20

    Vielen Dank KriZza.
    Ich habe bisher nur mit dem Recorder gearbeitet.
    Ich versuche mich in deinem Programm zurecht zu finden, glaube aber das meine Kenntnisse das Problem zu lösen noch ausgebaut werden müssen.

  • Excel Zellen auslesen und Dateien öffnen

    • psjunkey
    • 5. Mai 2015 um 12:49

    Hallo,
    ich will 1500 Pdf´s mit einem Programm erzeugen. Verschiedene Wärmebilder als Pdf abspeichern.

    Hierzu habe ich mir eine Auoti Datei geschrieben die auch funktioniert.

    Um den Vorgang weiter zu automatisieren, bräuchte ich eine Funktion die in einer Excel-Liste schaute welche Bilder geöffnet werden müssen.


    Bild von Bild bis Dokumentname
    IV_00050.BMT IV_00054.BMT 0311.01.008
    IV_00055.BMT IV_00061.BMT 0311.01.009


    Beispiel: Zum Dokument 0311.01.008 gehören die Bilder IV_00050.BMT bis IV_00054.BMT diese müssen dann im Bilderordner geöffnet werden.

    Wenn die Dateien geöffnet sind geht es mit meinem bereits vorhandenen Programm weiter ist dies fertig soll es mit der nächsten Zeile weiter gehen.
    Könnt ihr mir einen Tipp/Befehl geben mit dem dies umsetzbar ist?

    Danke im Voraus

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™