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

Beiträge von Vitaq

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 12:28

    Hi Moombas

    hab den Fehler gefunden

    Global $File = "C:\Users\RS\Desktop\t\z.txt"

    der Pfad war nicht angegeben wo die txt genau liegt

    Vielen Dank für dein Unterstützung und vorallem Geduld

    Danke nochmal

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 12:16

    Ja ich habe 4 Ordner am Desktop

    Ordner 1

    Ordner 2

    Ordner 3

    Ordner 4

    ich könnte aber auch alle Excel Dateien in einen verschieben wenn das besser wäre


    Meine Excel Arbeitsmappe gehen von

    1_1 bis 1_50

    2_1 bis 2_50

    3_1 bis 3_50

    4_1 bis 4_50

    er öffnet mir die Excel Arbeitsmappen nicht

    die Console Ausgabe

    >"C:\Program Files (x86)\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\RS\Desktop\test44.au3"

    C:\Users\RS\Desktop\Ordner\_.xlsb

    >Exit code: 0 Time: 0.4118


    wie wenn er die xslb nicht finden würde

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 11:42

    Ja hast du falsch verstanden ich meinte mein Schrott Script funktioniert ohne Absturz

    Aber bei deinen Script öffnet er das Excel um gleich wieder abzustürzen

    k.a Warum

    Code
    $sExcelfile = "C:\Users\RS\Ordner" & $Line1 & "\" & $Line1 & "_" & $Line2 & ".xlsb"

    stimmt das denn das die $Line1...2x da drinnen steht???

    du kennst dich da bessser aus

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 11:27

    ok hab ich gemacht

    >"C:\Program Files (x86)\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\RS\Desktop\test44.au3"

    C:\Users\RS\Desktop\Ordner\_.xlsb

    >Exit code: 0 Time: 0.6964

    das ist das Ergebnis

    so nochmal mein Schrott Script getestet und da öffnet Excel die Arbeitsmappe

    ohne sich gleich wieder zu schließen

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 11:13

    Genau das Meine ich Ja

    der Code ist o.k aber die Console sagt Ordner 11

    C
    Opt('MustDeclareVars', 1)
    ;#RequireAdmin
    #include <ScreenCapture.au3>
    #include <File.au3>
    #include <Array.au3>
    #include <MsgBoxConstants.au3>
    #include <Excel.au3>
    #Include <File.au3>
    #include <Misc.au3>
    #Include <Date.au3>
    
    Global $oExcel, $sExcelfile, $oWorkbook
    Global $File  = "C:\Users\RS\Desktop\t\ExcelDatei.txt"
    Global $Line1 = FileReadLine($File, 1)
    Global $Line2 = FileReadLine($File, 2)
    
    
    HotKeySet("{ESC}", "_Exit")
    
    $oExcel = _Excel_Open() ;Excel Teil ----- öffnet Excel
    $sExcelfile = "C:\Users\RS\Desktop\Ordner1" & $Line1 & "\" & $Line1 & "_" & $Line2 & ".xlsb"
    Consolewrite($sExcelfile & @CRLF) ; nur zur Kontrolle
    $oWorkbook = _Excel_BookOpen($oExcel, $sExcelfile) ; Exceldatei öffnen
    
    Func _Exit()
        Exit
    EndFunc   ;==>_Exit Beendet das Script
    Alles anzeigen

    das ist doch seltsam

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 11:07

    Dein Script passt auch

    aber aus irgendeinem Grund macht das Excel die Arbeitsmappe nicht auf

    Excel beendet sich sofort


    das steht in der Console

    >"C:\Program Files (x86)\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\RS\Desktop\test44.au3"

    C:\Users\RS\Desktop\Ordner11\1_33.xlsb

    >Exit code: 0 Time: 0.7167

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 10:52

    C:\Users\RS\Ordner1\1_33.xlsb

    das ist das Ergebnis

    Komischerweise zeigtt er einen Ordner1 an

    Er öffnet auch das Excel aber nicht die Arbeitsmappe und stürzt gleich ab

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 10:23

    Hi

    danke für die Antwort

    aber er öffnet mir das Excel File nicht

  • Das geht doch bestimmt Besser zu Lösen !!!!

    • Vitaq
    • 8. Juni 2023 um 09:50

    Hallo Leute

    Ich habe 5 Ordner mit jeweils 40 Excel Dateien

    Ich lese aus einer txt Datei die ersten 2 Stellen aus

    diese Zahlen sagen mir dann welche Exel Datei ich öffnen muß

    C
    ;#RequireAdmin
    #include <ScreenCapture.au3>
    #include <File.au3>
    #include <Array.au3>
    #include <MsgBoxConstants.au3>
    #include <Excel.au3>
    #Include <File.au3>
    #include <Misc.au3>
    #Include <Date.au3>
    
    
    HotKeySet("{ESC}", "_Exit")
    Func _Exit()
        Exit
    EndFunc   ;==>_Exit Beendet das Script
    
    Global $Line1 = FileReadLine ("C:\Users\RS\Desktop\t\ExcelDatei.txt", 1)
    Global $Line2 = FileReadLine ("C:\Users\RS\Desktop\t\ExcelDatei.txt", 2)
    
    If $Line1 = "1" And $Line2 = "33" Then
     Global $oExcel = _Excel_Open() ;Excel Teil ----- öffnet Excel
    $sExcelfile = "C:\Users\RS\Ordner1\1_33.xlsb"
    Global $oWorkbook = _Excel_BookOpen($oExcel, $sExcelfile) ; Exceldatei öffnen
    
    EndIf
    If $Line1 = "4" And $Line2 = "41" Then
     Global $oExcel = _Excel_Open() ;Excel Teil ----- öffnet Excel
    $sExcelfile = "C:\Users\RS\Ordner4\4_41.xlsb"
    Global $oWorkbook = _Excel_BookOpen($oExcel, $sExcelfile) ; Exceldatei öffnen
    
    EndIf
    Alles anzeigen

    aber bei 5 Ordner a 40 ExcelDateien da kommt eine Menge an Zeilen zum schreiben zusammen

    Hat jemand eine Idee wie man das anderes/besser/kürzeren Code lösen könnte?

  • Array letzter Eintrag

    • Vitaq
    • 21. Juli 2018 um 08:31
    Zitat

    Ich würde ja nur gerne wissen wo der Fehler ist und was bei meinem Script nicht passt.

    Super Bitnugger

    das du mir die/den Fehler anzeigst das habe ich so nicht erwartet jetzt kann ich bei meinem ursprünglichen Script bleiben.

    Vielen Dank

  • Array letzter Eintrag

    • Vitaq
    • 20. Juli 2018 um 23:10

    Danke Bitnugger

    Dank dir hab ichs jetzt

    Code
    Local $aTest[4]
    
    $aTest[0] = "1"
    $aTest[1] = "2"
    $aTest[2] = "3"
    $aTest[3] = "4"
    
    
    Local $aArray = FileReadToArray ("C:\Users\S\Desktop\a\1.txt")
    ;If IsArray($aArray) then
        ;MsgBox(4096,"Fehler", "Fehler beim einlesen der Daten.")
        ;EndIf
    If $aArray[Ubound($aArray)-1] = "3" Then
        MsgBox(64, @ScriptName, 'Letzte Zeile ist "3"!')
    EndIf
    Alles anzeigen
  • Array letzter Eintrag

    • Vitaq
    • 20. Juli 2018 um 21:58
    Zitat

    Lernresistenz belohne nur ungern...

    Bin nicht Lernresistenz so nebenbei es ist halt nicht leicht für mich.

    Ich danke dir das du mir die "Lösung zeigst" aber ich hab ja ein Script gepostet.

    Ich würde ja nur gerne wissen wo der Fehler ist und was bei meinem Script nicht passt.

    Ich konnte ja die txt als Array einlesen und die letze Zahl anzeigen lassen aber wie zum Teufel vergleiche ich letzten Wert mit den definierten

  • Array letzter Eintrag

    • Vitaq
    • 20. Juli 2018 um 19:12
    Code
    Local $aTest[4]
    
    $aTest[0] = "1"
    $aTest[1] = "2"
    $aTest[2] = "3"
    $aTest[3] = "4"
    
    
    Local $aArray = FileReadToArray ("C:\Users\S\Desktop\a\1.txt")
    
    MsgBox(4, "MD5", $aArray[Ubound($aArray)-1])
    
    For $i = 0 to $aArray[Ubound($aArray)-1]
           If $aTest[$i] = $aArray[$i] Then Exit MsgBox(0, "Ergebnis", "")
    Next
    Alles anzeigen

    Könnte mir jemand bitte schreiben wie ich diesen letzten Wert mit meinen festgelegten Werten vergleiche.

    Komme da nicht weiter.

    txt als Array und Anzeige der letzten Zahl funzt aber wie vergleiche ich das??

  • Array letzter Eintrag

    • Vitaq
    • 19. Juli 2018 um 23:08

    ok

    Danke

  • Array letzter Eintrag

    • Vitaq
    • 19. Juli 2018 um 22:20
    Spoiler anzeigen

    ; Read the current script file into an array using the filepath.

    $avArray = FileReadLine ("C:\Users\S\Desktop\a\1.txt", -1)

    ;MsgBox($MB_SYSTEMMODAL, "", "last line of the file:" & @CRLF & $avArray

    If "20" Then

    MsgBox(4096,"Info", "Richtige Zahl.")

    EndIf

    Funkt so nicht was mache ich falsch muss ich die letzte Zahl anders angeben?

    Sorry

  • Array letzter Eintrag

    • Vitaq
    • 19. Juli 2018 um 21:39
    Spoiler anzeigen

    ; Read the current script file into an array using the filepath.

    $aArray = FileReadLine ("C:\Users\S\Desktop\a\1.txt", -1)

    MsgBox($MB_SYSTEMMODAL, "", "last line of the file:" & @CRLF & $aArray)

    Hab die txt nun als Array aber wie definiere ich jetzt wenn Zahl 3 dann starte das Makro, wenn Zahl 5 dieses Makro?

    Muss ich die Zahlen fürs Makro starten auch als Array definieren?

  • Array letzter Eintrag

    • Vitaq
    • 18. Juli 2018 um 22:42
    Zitat

    Oder du musst nochmal ran und besser beschreiben was du warum machen möchtest.

    Also mein Vorhaben sieht so aus txt als Array einlesen letzten Eintrag/Zahl auslesen.

    Wenn Zahl 3 dann Excel öffnen Makro 3 starten, wenn Zahl 12 dann Excel öffnen Makro 12 starten

    Den Teil mit Excel öffnen und Makro starten habe ich.

  • Array letzter Eintrag

    • Vitaq
    • 18. Juli 2018 um 22:08
    Code
    ; Read the current script file into an array using the filepath.
        Local $aArray = FileReadToArray ("C:\Users\S\Desktop\a\1.txt")
        Local $iLineCount = @extended

    Konnte das txt file wie von dir geschrieben als Array einlesen aber wie definiere ich die letzte Zeile?

  • Array letzter Eintrag

    • Vitaq
    • 18. Juli 2018 um 21:23

    Hi alpines

    Wie meinst du das explizit auf den Index zugreifen. Meine txt Datei hat einmal 1000 Einträge dann wieder nur 200 wichtig ist aber nur der letzte.

    Mein Vorhaben ist wenn letzter Eintrag "3" dann mache das wenn letzter Eintrag "12" dann mache dies

    Meine letzte Zahl ist quasi Start für dieses oder jenes

  • Array letzter Eintrag

    • Vitaq
    • 18. Juli 2018 um 20:58

    Hallo Leute

    Hab hier eine txt Datei mit mehreren Werten ich möchte aber nur den letzten Wert mit dem aus dem Script vergleichen.

    Also MSgBox wenn die "3" am Ende steht aber irgendwie geht das nicht bekomme auch eine Meldung wenn die "3" wo anders ist.

    Hat jemand eine Idee


    Code
    Local $aRecords
    $sSourcePath = "C:\Users\S\Desktop\a\"
    $aFilesInFolder = _FileListToArray($sSourcePath, "*.txt" )
    For $i = 1 To $aFilesInFolder[0]
    
    If Not _FileReadToArray($sSourcePath & $aFilesInFolder[$i],$aRecords) Then
       MsgBox(4096,"Fehler", "Fehler beim einlesen der Daten.")
       Exit
    EndIf
    
    
    Global $aArray_Static[1] = ["3"]
    
    For $i = 0 To UBound($aArray_Static) - 1
    
    If _ArraySearch($aRecords, $aArray_Static[$i]) <> -1 Then
    
            MsgBox(0, "Found!", $aArray_Static[$i])  
    
       EndIf
    Next
    Next
    Alles anzeigen

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™