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. Alina

Beiträge von Alina

  • Cron-Tab, der "Büro-Sklave"

    • Alina
    • 21. Dezember 2014 um 02:59

    Arbeitet einer von Euch noch mit Cron-Tab?
    Ist ja eine feine Sache und besonders die Lösung
    mit AutoIt.

    Hier mal ein Auszug mit einer Beschreibung von Cron-Tab:
    #cs
    Wer CronTab kennt und regelmäßig geiche Abläufe hat, wird diese kleine EXE-Datei lieben.
    Jeden Morgen Daten digital abholen? Macht CronTab
    Immer um 14:00 Uhr und 20:00 Uhr Datenupdate Ser-1 / Ser-2? Macht CronTab
    Ja an jeden Geburtstag denken? Macht CronTab
    Am 03.07.2015 ein Buch bestellen? CronTab erinnert mich an jedem Montag im Juni daran,
    das ich es schon vorbestellen kann.

    Also CronTab ist schon was feines.

    Dies ist ein Beispiel für eine Datei. CRONTAB.txt

    Spoiler anzeigen
    [autoit]


    ###########################################################################################
    # -------------Minuten (0 - 59)
    # | ----------- Stunden (0 - 23)
    # | | --------- Tag des Monats (1-31)
    # | | | ------- Monat (1-12)
    # | | | | ----- Tag der Woche (0 - 7) (Sonntag = 0 Montag = 1 ... 6 = Samstag, Sonntag = 7)
    # | | | | |
    # * * * * * Befehl, der ausgeführt werden soll.
    #
    #
    # I ist gültig, wenn alle Werte aktiv die Ausführung des Crom ermöglichen sollen
    # * Bedeutet, dass alle Werte gültig sind
    # / Aktivieren einer Wiederholung z. B. / 15 beduetet alle 15 Minuten
    # - Erlaubt die Definition einer Reihe z. B. "1-5 * * * *" bedeutet es wird zu jeder vollen Stunden 1. - 5. Minute
    # , Legt mehrere Werte fest bzw. trennt Werte voneinander
    #
    # Interne Befehle
    # ~~~~~~~~~~~~~~~~~~~~
    #: Kill <proceso> Prozess endet also: kill iexplore.exe schließt den Internetexplorer
    #: off schaltet den PC aus Computer
    #: exit beendet den Cronjob
    #: reboot Computer neu gestarten
    #: Beep <frequenz> <dauer im Millisekunden> zB: beep 500 1000
    #: play <name> z. B.: :play c: \ windows \ medien \ tada.wav
    # () <Title> () <text> Nachricht z. B. () alert () Dies ist eine Botschaft der Nachweis | | Dies ist eine weitere
    #
    ################################################## ######################################

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

    # Dies ist ein Kommentar
    # Stunden Minuten Tage Monate Wochentag
    #
    # Es wird jede Minute
    * * * * * Command

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

    # Wird jede Minute von 18:00 Uhr bis 18:59 Uhr
    # * 18 * * * Kommando

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

    # Es läuft Montag jede Minute
    * * * * 1 Kommando

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

    # Message
    * * * * * () Titel () Nachricht | | Eine weitere Linie

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

    # Öffnet die Datei reg.log beim starten des Cron
    i i i i i reg.log

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

    # Öffnen die Datei reg.log werktags (Mo.- Fr.) zu beginnen, wenn der Cron startet
    i i i i 1-5 reg.log

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

    # Schließt das Programm Notepad beim starten von Cron
    i * * * :* kill notepad.exe

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

    # Schaltet den PC Montag, Dienstag, Mittwoch, Donnerstag und Freitag um 20:00 Uhr aus.
    # Samstags und sonntags um 22:30 Uhr
    # 0 20 * * 1: off
    # 0 20 * * 2: off
    # 0 20 * * 3: off
    # 0 20 * * 4: off
    # 0 20 * * 5: off
    # 30 22 * * 6: off
    # 30 22 * * 0: off

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

    # Dies macht das gleiche wie oben
    # 0 20 * * 1-5: off
    # 30 22 * * 6.7: off

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

    # tägliches herunterfahren des PC's um 22:25
    # 25 22 * * :* off

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

    Run CCleaner # mit dem Parameter / auto am Sonntag um 00:00 Uhr (Mitternacht)
    # "Pfad zu Datei incl. ausführbare Datei" || / Parameter
    # 0 0 * * 7 "C: \ Program Files \ CCleaner \ ccleaner.exe" || / auto

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

    # erst um 5:59 die Ausgabe einer Info, das der PC gleich ausschaltet
    # und um 6:00 Uhr schaltet der PC dann aus.
    59 5 * * * () exit () Computer wird ausgeschaltet in | | einer Minuten um 6:00
    0 6 * * * : off

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

    # 750 Hz-Ton für eine 1/2 Sekunde
    * * * * * Beep 750 500

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

    # Audio-Datei c: \ windows \ medien \ tada.wav Flügel alle 15 Minuten Knochenmark 0 15 30 45
    # * / 15 * * * :* spielen c: \ windows \ medien \ tada.wav

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

    #ce

    [/autoit]


    Für die Textdatei eine kleine Gui erstellen und Cron-Tab macht so einiges wann immer man es
    möchte und der PC angestellt ist. Ein kleiner "Büro-Sklave" :rofl:

    Wenn man sich das Script einmal durchgeschaut und verstanden hat, kann man es u. a.
    gut dafür nutzen, geschriebene Scripte (im Hintergrund) auszuführen. Zum Beispiel wenn jemand Geburtstag hat, diesem automatisch eine Geb.-Mail zukommen lassen. Dank AutoIt kann dieses ja sehr persönlich erfolgen. Ist nur ein kleines Beispiel. Oder
    wenn man eine Email mit einem Bestimmten Wort im Betreff hat, darauf reagieren (z. B. mit einer SMS (AutoIt-SMS-Script) die Nachricht senden: "Allertmeldung: XYZ" an Mobilrufnummer 123 vom Absender Datenserver-3.
    Oder jeden Morgen wenn der PC angeschaltet wird, bestimmte Programm gleich mit starten. und und und. Ich finde Cron-Tab noch recht gut.

  • PC Sicherung Komplett

    • Alina
    • 20. Dezember 2014 um 16:17

    Moin Moin zusammen.

    Wir haben in DK und D verschiedene Verträge mit Hardwarehändlern.
    Anfang Januar kommen in D-2, DK-3, D-1 und D4-D6 neue PC's, die ab
    ca. 01.02.2015 getauscht ausgetauscht werden. Da die PC's schon vom
    Hersteller den jeweiligen Standorten angepaßt werden, wurde den Listen
    zugestellt. Soweit okay, das habe ich alles in der Ablage gehabt. Nur
    das Problem ist, das die PC's S-1 und D4-D6 keine Backups mit liefern.
    .
    Frage ist, wie die ganzen PC's am besten 1:1 sichern. Wir haben DHClone
    Versionen für jeden Standort, aber davon wollen wir weg.
    .
    Nun die Frage an Euch: was würdet ihr empfehlen, ohne das dafür die
    Admins viel zu tun habe. Ich mache das nebenbei wie einige ja wissen
    bei uns auf Arbeit, aber viel Zeit möchte ich dafür nicht opfern. Habe
    auch noch das Projekt-3/2015 (Rechtsdoku. der Bauphase - Je....) in
    planung mit Fertigstellung der Vorlaufphase bis 13.02.2015) als TL am
    laufen.
    .
    Preislich macht Euch keine Sorgen. Ich glaube nicht, das hier ein Problem
    bestehen wird.
    .
    WICHTIG: DIe Backups müssen mobil sein, da diese nicht Vorort archiviert
    werden, sondern zentral einmal in DK und einmal in D, zumindest das
    Original. EIne Kopie kommt in der Serverraum, wo u. a. bei richtiger Temp.
    auch alle Software gelagert ist.
    .
    Wäre dankbar, wenn jemand der beruflich damit zu tun hat oder sonst auch
    gute Erfahrungen hat, sich dazu äußern würde. Ich glaube nicht, das man da
    was mit AutoIt zaubern kann, aber deshalb poste ich es in "Talk".
    .
    .
    Edit: vergessen und evtl. wichtig: im ersten "Schub" werden es 63 PC's sein,
    die bereits Arbeitsplatzspezifische Software bereitz installiert und eingerichtet
    wurden. Also müssen die JEWEILS eine 1:1 Kopie bekommen.
    Oder wäre es eher ratssam, was mir gerade einfällt, die Recover-Partition EINMAL
    abzusichern (gleiche Hardware in den PC's gegeben) und dann auslesen lassen
    irgendwie, wo der Unterschied zu "Betriebssystempartition ist" und dann nur pro PC
    einmal die Unterschiede absichern. Sinnvoll? Dumme Idee?
    .

  • Excel & AutoIt

    • Alina
    • 19. Dezember 2014 um 15:50

    @water

    Derzeitig keine Probleme. DANKE !!!

  • Excel & AutoIt

    • Alina
    • 18. Dezember 2014 um 20:20

    Zeilen 17-23 sind raus !!!

  • Excel & AutoIt

    • Alina
    • 18. Dezember 2014 um 18:29

    water:
    Ist damit dieses hier geklärt: Du verwendest _Excel_BookOpen UND _Excel_BookAttach ?

    Test-Script schaut aktuell wie folgt aus:

    Spoiler anzeigen
    [autoit]


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

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

    $first_in = "Alsterbogen"

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

    ; Create application object and open an example workbook
    Global $sFilePath = @ScriptDir & "\test.xlsx"
    Local $oExcel = _Excel_Open(False, False, True, True, True)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example", "Error creating the Excel application object." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    Local $oWorkbook = _Excel_BookOpen($oExcel, $sFilePath)
    If @error Then
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example", "Error opening workbook '" & $sFilePath & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
    EndIf

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

    ; *****************************************************************************
    ; Attach to the first Workbook where the file path matches
    ;DIREKT EINE ZELLE ANSPRECHEN
    ; *****************************************************************************
    $oWorkbook = _Excel_BookAttach($sFilePath)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example 1", "Error attaching to '" & $sFilePath & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example 1", "Search by 'filepath':" & @CRLF & @CRLF & "Successfully attached to Workbook '" & $sFilePath & "'." & @CRLF & @CRLF & "Ausgelesener Wert aus A15: " & $oWorkbook.Activesheet.Range("A15").Value & @CR & "Aber diese Angabe ist nicht dynamisch. Also eine gewisse Zelle wird ausgelesen.")

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

    ; *****************************************************************************
    ; Display a list of all worksheets for a specific Workbook
    ; TABELLENBLATTNAME
    ; *****************************************************************************
    Local $aWorkSheets = _Excel_SheetList($oWorkbook)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_SheetList Example 1", "Error listing Worksheets." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _ArrayDisplay($aWorkSheets, "Excel UDF: _Excel_SheetList Example 1")

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

    ; *****************************************************************************
    ; Find all occurrences of value $first_in (partial match)
    ; SUCHT NACH $first_in
    ; *****************************************************************************
    Local $aResult = _Excel_RangeFind($oWorkbook, $first_in)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeFind Example 1", "Error searching the range." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeFind Example 1", "Find all occurrences of value " & $first_in & " (partial match)." & @CRLF & "Data successfully searched.")
    _ArrayDisplay($aResult, "Excel UDF: _Excel_RangeFind Example 1", "", 0, "|", "Sheet|Name|Cell|Value|Formula|Comment")

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

    Local $text = StringReplace($aResult[0][2], "$A$", "$B$")
    Local $numreplacements = @extended
    Local $text2 = StringReplace($aResult[0][2], "$A$", "$C$")
    Local $numreplacements2 = @extended
    MsgBox(0, "Der neue String, der nun aus der Exycel-Tabelle ausgelesen werden soll: ", $text & @CR & $text2)

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

    $sCellValue = _Excel_RangeRead($oWorkbook, Default, $text)
    $sCellValue2 = _Excel_RangeRead($oWorkbook, Default, $text2)
    MsgBox(0, "", "Die beiden Zellwerte sind: " & @CRLF & $sCellValue & @CRLF & "und" & @CRLF & $sCellValue2)

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

    _Excel_BookClose($oWorkbook)

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

    _Excel_Close($oExcel, False)

    [/autoit]
  • Excel & AutoIt

    • Alina
    • 18. Dezember 2014 um 17:51

    water.
    Die Excel-Datei liegt geschlossen im gleichen Verzeichnis und wird nur durch das Script genutzt. Eine GUI scripte ich dann später noch, wo ich dann das erlerte dann anwenden möchte. Dazu soll eine Autovervollständigung auf den $A$ & si erfolgen.

    Das Script soll die Excel-Datei versteckt öffnen, dann ja auch das Workbook, wenn ich die Frage nun richtig verstehe. ABER es kann sein, das auf dem PC bereits Excel läuft, nur halt mit ganz anderen Dateien, als die in dem Script verwendeten.

    Frage beantwortet? ?(;(?(

  • Excel & AutoIt

    • Alina
    • 17. Dezember 2014 um 16:27
    Zitat von water

    BTW: Du verwendest _Excel_BookOpen UND _Excel_BookAttach.
    Nur eines davon wird benötigt (sonst gibt es Probleme beim Ende des Skriptes).
    Der zweite Befehl ist notwendig, wenn Du das Excel Workbook nicht selbst öffnest sondern Dich an ein bereits geöffnetes dranhängen möchtest.

    Jetzt frage ich mich, wie ich das umsetzen soll? ?(

  • Excel & AutoIt

    • Alina
    • 17. Dezember 2014 um 15:32

    :party: O le oleeeeeeeeeee. Ich glaub ich tanz gleich in Berlin oder doch lieber gleich in Wieeeeeen. :party:


    Gute Laune.

    Ich glaube ich habe die Lösung selber gefunden. Aber schmeißt selber ein Blick drauf. Wie ich das hin bekommen habe?
    Es gibt doch die Hilfe-Datei, da habe ich dann ordentlich gelesen und ausprobiert. Dieser kleine Tritt in den Popo mit dem Hinweis auf den Beitrag der hier am Montag, 22:11 und Montag, 23:50 gepostet wurde behob den grundsätzlichen Fehler und der Rest war viel lesen und verstehen und überlegen.

    Und hier nun das Script:

    Spoiler anzeigen
    [autoit]


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

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

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

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

    ; *****************************************************************************
    ; Attach to the first Workbook where the file path matches
    ;DIREKT EINE ZELLE ANSPRECHEN
    ; *****************************************************************************
    $oWorkbook = _Excel_BookAttach($sWorkbook)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example 1", "Error attaching to '" & $sWorkbook & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example 1", "Search by 'filepath':" & @CRLF & @CRLF & "Successfully attached to Workbook '" & $sWorkbook & "'." & @CRLF & @CRLF & "Ausgelesener Wert aus A15: " & $oWorkbook.Activesheet.Range("A15").Value)

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

    ; *****************************************************************************
    ; Display a list of all worksheets for a specific Workbook
    ; TABELLENBLATTNAME
    ; *****************************************************************************
    Local $aWorkSheets = _Excel_SheetList($oWorkbook)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_SheetList Example 1", "Error listing Worksheets." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _ArrayDisplay($aWorkSheets, "Excel UDF: _Excel_SheetList Example 1")

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

    ; *****************************************************************************
    ; Find all occurrences of value "Alsterbogen" (partial match)
    ; SUCHT NACH "Alsterbogen"
    ; *****************************************************************************
    Local $aResult = _Excel_RangeFind($oWorkbook, "Alsterbogen")
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeFind Example 1", "Error searching the range." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeFind Example 1", "Find all occurrences of value 'Alsterbogen' (partial match)." & @CRLF & "Data successfully searched.")
    _ArrayDisplay($aResult, "Excel UDF: _Excel_RangeFind Example 1", "", 0, "|", "Sheet|Name|Cell|Value|Formula|Comment")

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

    Local $text = StringReplace($aResult[0][2], "$A$", "$B$")
    Local $numreplacements = @extended
    Local $text2 = StringReplace($aResult[0][2], "$A$", "$C$")
    Local $numreplacements2 = @extended
    MsgBox(0, "Der neue String, der nun aus der Exycel-Tabelle ausgelesen werden soll: ", $text & @CR & $text2)

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

    $sCellValue = _Excel_RangeRead($oWorkbook, Default, $text)
    $sCellValue2 = _Excel_RangeRead($oWorkbook, Default, $text2)
    MsgBox(0, "", "Die beiden Zellwerte sind: " & @CRLF & $sCellValue & @CRLF & "und" & @CRLF & $sCellValue2, 2)

    [/autoit]
  • Excel & AutoIt

    • Alina
    • 17. Dezember 2014 um 14:29

    Moin Moin zusammen.

    Jetzt bin ich schon so weit mit der Testdatei die ich erstellt habe, das eigentlich nur noch ZWEI Fragen offen sind.

    Das Script schaut derzeitig so aus und ich weiß, das es ein heiles durcheinander ist.

    Spoiler anzeigen
    [autoit]


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

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

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

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

    ; *****************************************************************************
    ; Attach to the first Workbook where the file path matches
    ;DIREKT EINE ZELLE ANSPRECHEN
    ; *****************************************************************************
    $oWorkbook = _Excel_BookAttach($sWorkbook)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example 1", "Error attaching to '" & $sWorkbook & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookAttach Example 1", "Search by 'filepath':" & @CRLF & @CRLF & "Successfully attached to Workbook '" & $sWorkbook & "'." & @CRLF & @CRLF & "Ausgelesener Wert aus A3: " & $oWorkbook.Activesheet.Range("A3").Value)

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

    ; *****************************************************************************
    ; Display a list of all worksheets for a specific Workbook
    ; TABELLENBLATTNAME
    ; *****************************************************************************
    Local $aWorkSheets = _Excel_SheetList($oWorkbook)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_SheetList Example 1", "Error listing Worksheets." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _ArrayDisplay($aWorkSheets, "Excel UDF: _Excel_SheetList Example 1")

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

    ; *****************************************************************************
    ; Find all occurrences of value "Adelbybek" (partial match)
    ; SUCHT NACH "ADELBYBEK"
    ; *****************************************************************************
    Local $aResult = _Excel_RangeFind($oWorkbook, "Adelbybek")
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeFind Example 1", "Error searching the range." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeFind Example 1", "Find all occurrences of value 'Adelbybek' (partial match)." & @CRLF & "Data successfully searched.")
    _ArrayDisplay($aResult, "Excel UDF: _Excel_RangeFind Example 1", "", 0, "|", "Sheet|Name|Cell|Value|Formula|Comment")
    MsgBox(0,"Adelbybek", $aResult[0][2])

    [/autoit]


    Die Excel-Test-Daten sind Nacholgende. die Originalen kann ich auf Grund von Datenschutzbestimmungen nicht verwenden. Name;Telefon;Geburtstag habe ich paar Daten aus einer Falk-Liste genommen.
    Es geht ja auch um das Prinzip und nicht um die Daten.

    Spoiler anzeigen
    [autoit]


    Straßenname Falkplan|links|rechts
    Abt-Nikolaus-Pfad|A|M3
    Adelbybek|A|T6
    Adelbyer Kirchenweg|K|5W

    [/autoit]

    1. Frage:
    Wie mache ich das, das die Exceldatei sogesagt im Hintergrund geöffnet wird, also das man es verstelt macht. Habe es in der Hilfe gesehen, aber ich bekomme das irgendwie nicht hin.

    2. Frage:
    In der letzten MsgBox wird ausgegeben wo die gesuchte Celle gefunden wird, also $A$3. Okay, das ist ja auch richtig. Nun aber ist in der Excel-Datei ja rechts neben $A$3 zwei weitere Angaben, nämlich $B$3 und $C$3. Wie bekomme ich diese untereinander in eine MsgBox ausgegeben?
    Mein Kopf sagt mir nun, einfach den Buchstaben der zwischen den beiden $-Zeichen steht austauschen. EInmal mit den B und einmal mit dem C. Theo sagt "Das sollte gehen", aber wie gesagt, das sagt Theo(retisch). Nur wie? Eigentlich doch ein klarer Fall für Oscar und StringRegExp?  :D

    Mir fällt gerade so ein, das man ja das "$aResult" wie folgt splitten könnte, aber wie dann dazu kommen, das er aus dem A ein B macht und dann das aus der Celle rechts daneben einlesen?

    Spoiler anzeigen
    [autoit]


    -Gedanke war Müll. Habe besseres gefunden in meinen Hirnwindungen. ;)

    [/autoit]

    Habe etwas besseres gefunden: StringReplace

    Spoiler anzeigen
    [autoit]


    Local $text = StringReplace($aResult[0][2], "$A$", "$B$")
    Local $numreplacements = @extended
    Local $text2 = StringReplace($aResult[0][2], "$A$", "$C$")
    Local $numreplacements2 = @extended
    MsgBox(0, "Die beiden neuen Strings, die nun aus der Excel-Tabelle ausgelesen werden soll: ", $text & @CR & $text2)

    [/autoit]

    Ja, jetzt brummt mein Kopf, wobei er wo ganz anders brummen sollte. oh manno.

  • Excel & AutoIt

    • Alina
    • 17. Dezember 2014 um 00:02

    Moin Moin-

    Habe meinen Fehler bereits bemerkt.
    Ich arbeite ja so, das ich bei einem deutschen Forum die deutsche Hilfe nutze, bei einem englischen dann die englische und da war das Problem wie oben schon vermutet.
    Wenn ich was im deutschen nicht verstehe, dann schaue ich eigentlich auch in der englischen Hilfe nach, nur verstand ich den Text und hielt es nicht für notwenig, noch mal auf englisch das gleich zu lesen.

    Da wir ein neues Rechtsprojekt reinbekommen haben, werde ich wohl die nächsten Tage schauen müssen, wie ich mich um das Thema Excel-AutoIt kümmern kann, aber ich bleibe am Ball. ;) Ein Rechtsprojekt mal wieder mit Hotelaufenthalt. Planzeit sechs mal sechs Tage in Folge. Also sechs Wochen, Sonne am siebten Tag. ;)

  • Excel & AutoIt

    • Alina
    • 15. Dezember 2014 um 15:21

    Ich verwende Excel 2007

    Ich habe die "_ExcelReadSheetToArray" ein zu ein kopiert und in SciTE eingefügt und dann gestartet und er sagt: undefined Funktion.

    "C:\Users\alina_hl_danmark\Desktop\test.au3"(4,31) : error: _ExcelBookNew(): undefined function.
    Local $oExcel = _ExcelBookNew()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    "C:\Users\alina_hl_danmark\Desktop\test.au3"(9,71) : error: _ExcelWriteCell(): undefined function.
    _ExcelWriteCell($oExcel, Round(Random(1000, 10000), 0), $x, $y)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    "C:\Users\alina_hl_danmark\Desktop\test.au3"(13,47) : error: _ExcelReadSheetToArray(): undefined function.
    Local $aArray = _ExcelReadSheetToArray($oExcel)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    "C:\Users\alina_hl_danmark\Desktop\test.au3"(34,62) : error: _ExcelBookSaveAs(): undefined function.
    _ExcelBookSaveAs($oExcel, @TempDir & "\Temp.xls", "xls", 0, 1)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    "C:\Users\alina_hl_danmark\Desktop\test.au3"(35,24) : error: _ExcelBookClose(): undefined function.
    _ExcelBookClose($oExcel)
    ~~~~~~~~~~~~~~~~~~~~~~~^


    Stehe da irgendwie auf einem Schlauch ! :(

  • Excel & AutoIt

    • Alina
    • 15. Dezember 2014 um 14:44

    Moin Chip.

    Ich habe zum Verständnis versucht das Beispielscript auf der Hilfe zu staren, aber schon da kommt ich nicht weiter, da das nicht funktioniert. Sonst wollte ich mich da durcharbeiten.

    Ich wollte ja dann mit den Arrays arbeiten, wie DU gesagt hast.
    .
    Mir würde es reichen, wenn ich ein Beispiel hätte. Hat jemand ein Solches?

  • RunAs - Fehler

    • Alina
    • 15. Dezember 2014 um 13:23

    Hast Du es mal mit "RunAs" versucht.

    Ich bekomme dann ind er MSgBox die Ausgabe
    1
    1326

  • Excel & AutoIt

    • Alina
    • 15. Dezember 2014 um 13:06

    Moin Moin zusammen.

    Ich habe eine Telefon und Geburtstagsliste in Excel: Name;Telefon;Geburtstag.

    Wenn ich nach dem Namen in Spalte-A suche, soll er mir die Telefonnummer und das Geburtsdatum in eine MsgBox ausgeben.

    Hat jemand ein Beispiel, wie man das machen kann?

  • Sprungmarke setzen

    • Alina
    • 14. Dezember 2014 um 23:40

    Danke Euch !!!

  • In GUICtrlSetData möglich fast 700 Einträge eingeben

    • Alina
    • 12. Dezember 2014 um 14:27

    Hat GUICtrlSetData eine Maximum oder kann man da fast 700 mal einen Eintrag durchführen. Also 700 Eintrge, statt hier nur drei: GUICtrlSetData(-1, "Eintrag1|Eintrag2|Eintrag3", "Eintrag3").

    Wenn nicht, wie löst man es, wenn man aber eigentlich alle benötigt?

  • Sprungmarke setzen

    • Alina
    • 12. Dezember 2014 um 13:49

    Moin Moin zusammen.

    Es geht um folgendes Script:

    Spoiler anzeigen
    [autoit]


    #include <GUIListBox.au3>
    #include <GuiConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <Constants.au3>

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

    $Debug_LB = False ; Prüft den Klassennamen (ClassName), der an die ListBox-Funktion übergeben wird. Setze dies versuchsweise auf True und verwende dann ein Handle zu einem anderen Control, um die Funktionsweise zu verstehen.

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

    Global $hListBox

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

    _Main()

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

    Func _Main()
    Local $hGUI

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

    ; Erstellt eine GUI
    $hGUI = GUICreate("(UDF) ListBox: Erzeugen", 400, 296)
    $hListBox = _GUICtrlListBox_Create($hGUI, "String bei Erzeugung", 2, 2, 396, 296, $LBS_SORT)
    GUISetState()

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

    GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")

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

    ; Fügt Dateien hinzu
    _GUICtrlListBox_BeginUpdate($hListBox)
    _GUICtrlListBox_ResetContent($hListBox)
    _GUICtrlListBox_InitStorage($hListBox, 100, 4096)
    _GUICtrlListBox_AddString($hListBox, "Musterfrau D1")
    _GUICtrlListBox_AddString($hListBox, "Mustermann D2")
    _GUICtrlListBox_AddString($hListBox, "Musterkind D3")
    _GUICtrlListBox_AddString($hListBox, "Mustermum D4")
    _GUICtrlListBox_AddString($hListBox, "Musterdad D5")
    _GUICtrlListBox_AddString($hListBox, "Musterfrau DK1")
    _GUICtrlListBox_AddString($hListBox, "Mustermann DK2")
    _GUICtrlListBox_AddString($hListBox, "Musterkind DK3")
    _GUICtrlListBox_AddString($hListBox, "Mustermum DK4")
    _GUICtrlListBox_AddString($hListBox, "Musterdad DK5")
    _GUICtrlListBox_AddString($hListBox, "Musterfrau DKD 1")
    _GUICtrlListBox_AddString($hListBox, "Mustermann DKD 2")
    _GUICtrlListBox_AddString($hListBox, "Musterkind DKD 4")
    _GUICtrlListBox_AddString($hListBox, "Mustermum DKD4")
    _GUICtrlListBox_AddString($hListBox, "Musterdad DKD5")
    _GUICtrlListBox_AddString($hListBox, "Musterfrau PD1")
    _GUICtrlListBox_AddString($hListBox, "Mustermann PD2")
    _GUICtrlListBox_AddString($hListBox, "Musterkind PD3")
    _GUICtrlListBox_AddString($hListBox, "Mustermum PD4")
    _GUICtrlListBox_AddString($hListBox, "Musterdad PD5")
    _GUICtrlListBox_AddString($hListBox, "Musterfrau PDK1")
    _GUICtrlListBox_AddString($hListBox, "Mustermann PDK2")
    _GUICtrlListBox_AddString($hListBox, "Musterkind PDK3")
    _GUICtrlListBox_AddString($hListBox, "Mustermum PDK4")
    _GUICtrlListBox_AddString($hListBox, "Musterdad PDK5")
    _GUICtrlListBox_EndUpdate($hListBox)

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

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    EndFunc ;==>_Main

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

    Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
    #forceref $hWnd, $iMsg
    Local $hWndFrom, $iIDFrom, $iCode, $hWndListBox
    If Not IsHWnd($hListBox) Then $hWndListBox = GUICtrlGetHandle($hListBox)
    $hWndFrom = $ilParam
    $iIDFrom = BitAND($iwParam, 0xFFFF) ; Niederwertiges Wort (WORD)
    $iCode = BitShift($iwParam, 16) ; Höherwertiges Wort (WORD)

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

    Switch $hWndFrom
    Case $hListBox, $hWndListBox
    Switch $iCode
    Case $LBN_DBLCLK ; Wird gesendet, wenn der Benutzer einen Doppelklick auf einen String in einer ListBox ausführt
    ; Test MsgBox
    ; MsgBox(0,"hWndFrom / IDFrom / Code", "hWndFrom / IDFrom / Code: " & $hWndFrom & "---" & $iIDFrom & "---" & $iCode)
    MsgBox(4160, "ausgewählt", "Sie haben folgende Auswahl getroffen: " & _GUICtrlListBox_GetText($hListBox, $iCode))
    EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_COMMAND

    [/autoit]

    1.)
    Wenn ich nun eine Auswahl wähle, zeigt er es mir richtig an. Treffe ich dann eine neue Entscheidung, wird immer die Auswahl angezeigt, die ich als erstes getroffen habe. Wie kann ich das ändern. Ich möchte, wenn ich auf "Musterfrau PDK1" einen Doppelklick durchführe, das "Musterfrau PDK1" angezeigt wird und wenn ich ""Musterkind PDK3"", das dann "Musterkind PDK3" angezeigt wird und nicht "Musterfrau PDK1", nur weil ich dieses als erstes aufgewählt habe.

    2.)
    Anstelle von später 697 mal "_GUICtrlListBox_AddString($hListBox, "XXX") möchte ich aus der st_list.txt, die untereinander stehenden Begriffe noch automatisch für das "XXX" einsetzen.
    a) ist das sinnvoll, da sich die Daten nie ändern
    b) wie ist es am sinnvollsten

  • Geschwindigkeitsoptimierung in AutoIt

    • Alina
    • 11. Dezember 2014 um 09:32

    @GTA:
    Bei Ram, muss Du da nicht noch mal 1,024 nehmen, da er jetzt, wenn ich das richtig sehe, ein GB als 1.000 sieht und nicht als 1.024. Richtig oder falsch? Bei mit zeigt er 5,87 GB RAM an, mal 1,024 = 6,01 GB RAM, was dann dem Weit näher kommt.

  • Paarungen auflisten

    • Alina
    • 11. Dezember 2014 um 09:17

    Die beiden Lösungen sind: SPITZE !!!
    VIELEN DANK !!!

  • Paarungen auflisten

    • Alina
    • 10. Dezember 2014 um 16:32

    Moin Moin.

    Ich habe 365 Paarungen, die ich in eine CSV Datei habe.
    Aufbau: Nr. | "Teil-A | Teil-B
    Ich suche jetzt eine Möglichkeit der Auflistung, wie oft eine Teil-A/Teil-B Paarung vorkommt und
    unter welcher Nummer ich diese wieder finde.
    Es gibt z. B. die Paarung 9 und 4 und diese mehr als wenige male. Genauso die Paarung 10 und 5 und so weiter. ;)
    Ausgabe stellt ich mir dann vor:
    94=2,15,29,....
    105=3,16, 30, ...

    Spoiler anzeigen
    [autoit]


    Nr.;Teil-A;Teil-B
    1;0;0
    2;9;4
    3;10;5
    4;0;0
    5;1;6
    6;2;7
    7;3;8
    8;4;9
    9;5;10
    10;0;0
    11;0;0
    12;6;1
    13;7;2
    14;8;3
    15;9;4
    16;10;5
    17;0;0
    18;0;0
    19;1;6
    20;2;7
    21;3;8
    22;4;9
    23;5;10
    24;0;0
    25;0;0
    26;6;1
    27;7;2
    28;8;3
    29;9;4
    30;10;5
    31;0;0
    32;0;0
    33;1;6
    34;2;7
    35;3;8
    36;4;9
    37;5;10
    38;0;0
    39;0;0
    40;6;1
    41;7;2
    42;8;3
    43;9;4
    44;10;5
    45;0;0
    46;0;0
    47;1;6
    48;2;7
    49;3;8
    50;4;9
    51;5;10
    52;0;0
    53;0;0
    54;6;1
    55;7;2
    56;8;3
    57;9;4
    58;10;5
    59;0;0
    60;0;0
    61;1;6
    62;2;7
    63;3;8
    64;4;9
    65;5;10
    66;0;0
    67;0;0
    68;6;1
    69;7;2
    70;8;3
    71;9;4
    72;10;5
    73;0;0
    74;0;0
    75;1;6
    76;2;7
    77;3;8
    78;4;9
    79;5;10
    80;0;0
    81;0;0
    82;6;1
    83;7;2
    84;8;3
    85;9;4
    86;10;5
    87;0;6
    88;0;0
    89;1;7
    90;2;8
    91;3;9
    92;4;10
    93;0;0
    94;5;0
    95;0;0
    96;0;0
    97;6;1
    98;7;2
    99;8;3
    100;9;4
    101;10;5
    102;0;0
    103;1;6
    104;2;7
    105;3;8
    106;4;9
    107;5;10
    108;0;0
    109;0;0
    110;6;1
    111;7;2
    112;8;3
    113;9;4
    114;10;5
    115;0;6
    116;0;0
    117;1;7
    118;2;8
    119;3;9
    120;4;10
    121;0;0
    122;5;0
    123;0;0
    124;6;1
    125;7;2
    126;8;3
    127;9;4
    128;10;5
    129;0;0
    130;0;0
    131;1;6
    132;2;7
    133;3;8
    134;0;0
    135;4;9
    136;5;10
    137;0;0
    138;6;1
    139;7;2
    140;8;3
    141;9;4
    142;10;5
    143;0;0
    144;0;0
    145;0;0
    146;1;6
    147;2;7
    148;3;8
    149;4;9
    150;5;10
    151;0;0
    152;6;1
    153;7;2
    154;8;3
    155;9;4
    156;10;5
    157;0;0
    158;0;0
    159;1;6
    160;2;7
    161;3;8
    162;4;9
    163;5;10
    164;0;0
    165;0;0
    166;6;1
    167;7;2
    168;8;3
    169;9;4
    170;10;5
    171;0;0
    172;0;0
    173;1;6
    174;2;7
    175;3;8
    176;4;9
    177;5;10
    178;0;0
    179;0;0
    180;6;1
    181;7;2
    182;8;3
    183;9;4
    184;10;5
    185;0;0
    186;0;0
    187;1;6
    188;2;7
    189;3;8
    190;4;9
    191;5;10
    192;0;0
    193;0;0
    194;6;1
    195;7;2
    196;8;3
    197;9;4
    198;10;5
    199;0;0
    200;0;0
    201;1;6
    202;2;7
    203;3;8
    204;4;9
    205;5;10
    206;0;0
    207;0;0
    208;6;1
    209;7;2
    210;8;3
    211;9;4
    212;10;5
    213;0;0
    214;0;0
    215;1;6
    216;2;7
    217;3;8
    218;4;9
    219;5;10
    220;0;0
    221;0;0
    222;6;1
    223;7;2
    224;8;3
    225;9;4
    226;10;5
    227;0;0
    228;0;0
    229;1;6
    230;2;7
    231;3;8
    232;4;9
    233;5;10
    234;0;0
    235;0;0
    236;6;1
    237;7;2
    238;8;3
    239;9;4
    240;10;5
    241;0;0
    242;0;0
    243;1;6
    244;2;7
    245;3;8
    246;4;9
    247;5;10
    248;0;0
    249;0;0
    250;6;1
    251;7;2
    252;8;3
    253;9;4
    254;10;5
    255;0;0
    256;0;0
    257;1;6
    258;2;7
    259;3;8
    260;4;9
    261;5;10
    262;0;0
    263;0;0
    264;6;1
    265;7;2
    266;8;3
    267;9;4
    268;10;5
    269;0;0
    270;0;0
    271;1;6
    272;2;7
    273;3;8
    274;4;9
    275;5;10
    276;0;0
    277;0;0
    278;6;1
    279;7;2
    280;8;3
    281;9;4
    282;10;5
    283;0;0
    284;0;0
    285;1;6
    286;2;7
    287;3;8
    288;4;9
    289;5;10
    290;0;0
    291;0;0
    292;6;1
    293;7;2
    294;8;3
    295;9;4
    296;10;5
    297;0;0
    298;0;0
    299;1;6
    300;2;7
    301;3;8
    302;4;9
    303;5;10
    304;0;0
    305;0;0
    306;6;1
    307;7;2
    308;8;3
    309;9;4
    310;10;5
    311;0;0
    312;0;0
    313;1;6
    314;2;7
    315;3;8
    316;4;9
    317;5;10
    318;0;0
    319;0;0
    320;6;1
    321;7;2
    322;8;3
    323;9;4
    324;10;5
    325;0;0
    326;0;0
    327;1;6
    328;2;7
    329;3;8
    330;4;9
    331;5;10
    332;0;0
    333;0;0
    334;6;1
    335;7;2
    336;8;3
    337;9;4
    338;10;5
    339;0;0
    340;0;0
    341;1;6
    342;2;7
    343;3;8
    344;4;9
    345;5;10
    346;0;0
    347;0;0
    348;6;1
    349;7;2
    350;8;3
    351;9;4
    352;10;5
    353;1;6
    354;0;0
    355;2;7
    356;3;8
    357;4;9
    358;5;10
    359;0;0
    360;0;0
    361;0;0
    362;6;1
    363;7;2
    364;8;3
    365;9;4

    [/autoit]

    Hat jemand eine Idee?

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™