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

Beiträge von Sirius

  • _ArrayDisplay "neue" Version

    • Sirius
    • 25. November 2014 um 10:09

    Hallo AspirinJunkie,

    erstmal vielen Dank für deine Antwort. Ich bin halt ein Anfänger! Und für mich persönlich ist es halt blöd, wenn ich mir mühevoll ein Script schreibe, welches dann auf einmal nicht mehr
    funktioniert, weil eine Information, welche ich im Script verwende einfach nicht mehr da ist. Und als Anfänger fragt man sich dann, was habe ich falsch gemacht. Hier läuft das Script und da nicht.

    Wo und wie kann ich denn jetzt die Anzahl der Reihen auslesen?

    Gruß
    Sirius

  • _ArrayDisplay "neue" Version

    • Sirius
    • 25. November 2014 um 07:48

    Hi Alina,
    mit "neuer" Version meinte ich SciTe.

    Ich habe auf der Arbeit die Version 3.3.7 installiert auf Windows 7 64bit und Office 2010.Auf dem Notebook habe ich die aktuelle Version von SciTe installiert auf Windows 8.1 und Office 2013 Professional Plus.

    Wenn ich jetzt mit _ArrayDisplay in der aktuellen SciTe Version, in Windows 8.1 einen Array anzeigen lasse, dann fehlt mir folgendes Feld (siehe Bild rotes Rechteck)

    Gruß
    Sirius

  • _ArrayDisplay "neue" Version

    • Sirius
    • 24. November 2014 um 21:50

    Nabend zusammen!
    Kann mir jemand mit der neuen Version helfen? Irgendwie komme ich nicht mehr klar. Wenn ich mit der "alten" Autoit Version _ArrayDisplay einen Array anzeigen lassen, dann bekomme ich in der 1. Zeile und Spalte angezeigt, wie viele Reihen und Spalten sich im Array befinden. Gibt es diese Anzeige in der "neuen" Version nicht mehr?

    Gruß
    Sirius

  • Probleme mit _Excelbookopen

    • Sirius
    • 24. November 2014 um 19:37

    Nabend zusammen.

    Leider ist noch ein Fehler aufgetreten.

    Fehlermeldung:

    D:\Programme\AutoIt3\Include\Excel.au3 (823) : ==> The requested action with this object has failed.:
    $avRET[$r][$c] = $oExcel.Activesheet.Cells($iStartRow + $r - 1, $iStartColumn + $c - 1).Value
    $avRET[$r][$c] = $oExcel.Activesheet.Cells($iStartRow + $r - 1, $iStartColumn + $c - 1)^ ERROR


    Auszug aus dem Script:

    Spoiler anzeigen


    Func oeffnen()
    Global $code = FileOpenDialog("Wähle Datenbank (XLSX, XLS) aus!",@StartupDir, "(*.xlsx;*.xls)",1 + 4)
    If Not @error Then GUICtrlSetState($Convert , $GUI_ENABLE)
    Global $aFiles = StringSplit($code, "|", 1)

    For $i = 2 To UBound($aFiles) -1
    $aFiles[$i] = $aFiles[1] & "\" & $aFiles[$i]

    Next
    EndFunc

    Func convert()

    If $aFiles[0] <= 1 Then
    For $i = 1 To $aFiles[0]

    Global $vsheet = "Deckblatt"
    Global $oWorkbook = _ExcelBookOpen($aFiles[$i])
    Global $sheet = _ExcelSheetActivate($oWorkbook, $vsheet)
    Global $asheet = _ExcelReadSheetToArray($oWorkbook)

    _ArrayDisplay($asheet)

    Ich habe Windows 8.1 und Office 2013 Professional Plus installiert.

    Ist die Excel.au3 vielleicht nicht kompatibel mit Office 2013?

    Gruß
    Sirius

  • Probleme mit _Excelbookopen

    • Sirius
    • 21. November 2014 um 21:45

    Hallo!

    Ich habe das Problem gelöst. Es lag an der Version von Autoit bzw. SciTE.

    Ich habe eine "alte" Version installiert, und schon läuft das Script wieder.

    Komisch, dass das nicht kompatibel ist.

    Oder gibt es eine Möglichkeit das Script auch in der neuen Version ans laufen zu kriegen?

    Gruß

    Sirius

  • Probleme mit _Excelbookopen

    • Sirius
    • 21. November 2014 um 21:25

    Hallo zusammen.

    ich habe Probleme mit _ExcelBookOpen, siehe Anhang.

    Was ich nicht verstehe ist, dass genau diese Programmierung auf einem anderen PC läuft.

    Kann mir jemand sagen, was ich falsch mache?

    Vielen Dank!

    Gruß
    Sirius

  • Fehlerabfrage einbauen

    • Sirius
    • 25. Februar 2014 um 15:14

    Hi zemkedesign!

    Vielen Dank für den Tipp! Habe es jetzt so gelöst:

    Spoiler anzeigen
    [autoit]


    Func oeffnen()
    Global $code = FileOpenDialog("Wähle XLSX oder XLS Datei aus!",@StartupDir, "(*.xlsx;*.xls)",1 + 4)
    If Not @error Then GUICtrlSetState($Convert , $GUI_ENABLE)
    Global $aFiles = StringSplit($code, "|", 1)

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

    For $i = 2 To UBound($aFiles) -1
    $aFiles[$i] = $aFiles[1] & "" & $aFiles[$i]

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

    Next
    EndFunc

    [/autoit]
  • Fehlerabfrage einbauen

    • Sirius
    • 25. Februar 2014 um 14:19

    Hallo zusammen!

    soweit läuft mein Script. Ich würde aber gerne noch ne Fehlermeldung einbauen, und zwar, wenn man ohne vorher eine Datei/Dateien mit Öffnen ausgewählt zu haben, den Button Konvertieren drückt. Wenn man das macht, dann stürzt das Script ab. Ich hätte an dieser Stelle gerne eine Fehlermeldung und, dass das Script weiter läuft.

    Ich weiß nicht, wie ich da ansetzen muss.

    Vielleicht kann mir jemand einen Tipp geben.

    Vielen Dank!


    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <WindowsConstants.au3>
    #include <Excel Rewrite.au3>
    #include <file.au3>
    #include <array.au3>
    #include <GetPathDetail.au3>
    #Region ### START Koda GUI section ###
    $exceldoku2pdf = GUICreate("exceldoku2pdf", 250, 328, 191, 124)
    $Convert = GUICtrlCreateButton("Konvertieren", 8, 184, 113, 49)
    $Exit = GUICtrlCreateButton("Beenden", 128, 184, 113, 49)
    $Oeffnen = GUICtrlCreateButton("Öffnen", 91, 92, 73, 49)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE, $Exit
    Exit

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

    Case $Exit

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

    Case $oeffnen
    oeffnen()

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

    Case $Convert
    convert()

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

    EndSwitch
    WEnd

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

    Func oeffnen()
    Global $code = FileOpenDialog("Wähle XLSX oder XLS Datei aus!",@StartupDir, "(*.xlsx;*.xls)",1 + 4)

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

    If @error Then MsgBox(0,"Fehler!", "Bitte wählen Sie zuerst eine .xls- oder .xlsx-Datei aus!")
    Global $aFiles = StringSplit($code, "|", 1)

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

    For $i = 2 To UBound($aFiles) -1
    $aFiles[$i] = $aFiles[1] & "" & $aFiles[$i]
    Next
    EndFunc

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

    Func convert()

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

    If $aFiles[0] <= 1 Then
    For $i = 1 To $aFiles[0]

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

    Global $oAppl = _Excel_Open()
    Global $oWorkbook = _Excel_BookOpen($oAppl, $aFiles[$i])
    Global $sOutput = $aFiles[$i]
    Global $sOut = _GetPathDetail($aFiles[$i])
    Global $fOut = $sOut[2] & "" & $sOut[4]

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

    _Excel_Export($oAppl, $oWorkbook, $fOut)

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

    Sleep(50)
    ProcessClose("excel.exe")
    Local $PID = ProcessExists("excel.exe")
    If $PID Then ProcessClose($PID)
    Next
    EndIf

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

    For $i = 2 To $aFiles[0]

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

    Global $oAppl = _Excel_Open()
    Global $oWorkbook = _Excel_BookOpen($oAppl, $aFiles[$i])
    Global $sOutput = $aFiles[$i]
    Global $sOut = _GetPathDetail($aFiles[$i])
    Global $fOut = $sOut[2] & "" & $sOut[4]

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

    _Excel_Export($oAppl, $oWorkbook, $fOut)

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

    Sleep(50)
    ProcessClose("excel.exe")
    Local $PID = ProcessExists("excel.exe")
    If $PID Then ProcessClose($PID)
    Next
    EndFunc

    [/autoit]
  • Excel-Datei mit mehreren Excel-Sheets in eine PDF-Datei umwandeln

    • Sirius
    • 20. Februar 2014 um 10:23

    Hallo zusammen.

    Wie ich bereits in der Überschrift geschrieben habe, suche ich einen Weg, wie ich aus einer Excel-Datei die mehrere Excel-Sheets beinhaltet in eine PDF-Datei umwandeln kann. Das Problem ist, dass ich es einfach nicht schaffe, dass alle Excel-Sheets umgewandelt werden, sondern immer nur das aktive Sheet. Es sind auch in jeder Excel-Datei unterschiedlich viele Excel-Sheets.

    Vielleicht kann mir jemand helfen.

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <WindowsConstants.au3>
    #include <Excel.au3>
    #include <excelex.au3>
    #include <file.au3>
    #include <array.au3>
    #Region ### START Koda GUI section ###
    $exceldoku2pdf = GUICreate("exceldoku2pdf", 615, 438, 191, 124)
    $Convert = GUICtrlCreateButton("Konvertieren", 112, 264, 113, 49)
    $Exit = GUICtrlCreateButton("Beenden", 384, 264, 115, 49)
    ;~ $Progress1 = GUICtrlCreateProgress(160, 344, 313, 33)
    $Oeffnen = GUICtrlCreateButton("Öffnen", 264, 144, 73, 49)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE, $Exit
    Exit

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

    Case $Exit

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

    Case $oeffnen
    oeffnen()

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

    Case $Convert
    convert()

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

    EndSwitch
    WEnd

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

    Func oeffnen()
    Global $code = FileOpenDialog("Wähle XLSX oder XLS Datei aus!",@StartupDir, "(*.xlsx;*.xls)",1 + 4)

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

    If @error Then MsgBox(0,"Fehler!", "Bitte wählen Sie zuerst eine XLSX-Datei aus!")
    Global $aFiles = StringSplit($code, "|", 1)
    For $i = 2 To UBound($aFiles) -1
    $aFiles[$i] = $aFiles[1] & '\' & $aFiles[$i]
    Next
    EndFunc

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

    Func convert()

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

    If $aFiles[0] <= 1 Then
    For $i = 1 To $aFiles[0]
    Local $oExcel = _ExcelBookOpen($aFiles[$i])

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

    Next
    EndIf

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

    For $i = 2 To $aFiles[0]

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

    Local $oExcel = _ExcelBookOpen($aFiles[$i])

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

    Next

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

    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]
  • Brauche Hilfe bei

    • Sirius
    • 9. Februar 2014 um 19:46

    Vielen Dank!

  • Brauche Hilfe bei

    • Sirius
    • 9. Februar 2014 um 19:17

    Hallo zusammen!

    Ich brauche eure Hilfe. Ich würde gerne den Arrays nach und nach mit Excel öffnen lassen, und in ein PDF umwandeln lassen. Wie kann ich das in der Funktion convert umsetzen?

    Ich denke mit einer for to Schleife, aber ich habe das Problem, dass ich nicht weiß, wie ich das umsetzen kann. Ich versteh nicht, wie ich bei _ExcelBookOpen( ) die Arrays nach und nach ansprechen kann, weil so wie es jetzt ist, macht das Script immer alles mit der ersten Datei (aFiles[2])

    Ich hoffe, ihr versteht, wo mein Problem liegt!?

    Vielen Dank

    Gruß Sirius

    Spoiler anzeigen


    Func oeffnen()
    Global $code = FileOpenDialog("Wähle XLSX oder XLS Datei aus!",@StartupDir, "(*.xlsx;*.xls)",1 + 4)

    If @error Then Exit
    Global $aFiles = StringSplit($code, "|", 1)

    For $i = 2 To UBound($aFiles) -1
    $aFiles[$i] = $aFiles[1] & "\" & $aFiles[$i]
    Next
    _ArrayDisplay($aFiles)

    EndFunc

    Func convert()

    For $i = $aFiles[2] to $aFiles[0] Step 1

    Local $oExcel = _ExcelBookOpen($aFiles[2])
    Local $vSheet = 1
    MsgBox("","",$aFiles[2])
    If @error = 1 Then
    MsgBox(0, "Fehler!", "Das Excel-Objekt konnte nicht erstellt werden.")
    Exit
    ElseIf @error = 2 Then
    MsgBox(0, "Fehler!", "Die Datei existiert nicht.")
    Exit
    EndIf
    _ExcelSheetActivate($oExcel, $vSheet)
    $NewFilepath = $aFiles[2]
    $fileformat = 57

    With $oExcel
    .Application.DisplayAlerts = False
    .ActiveWorkBook.SaveAs($NewFilepath, $Fileformat)
    EndWith

    msgbox(0,"Done","Die Datei wurde in PDF convertiert")
    Sleep(50)
    _ExcelBookClose($oExcel, 1)
    Sleep(50)
    ProcessClose("excel.exe")
    Local $PID = ProcessExists("excel.exe")
    If $PID Then ProcessClose($PID)
    Next

    EndFunc

  • Excel nach PDF konvertieren?

    • Sirius
    • 7. Februar 2014 um 09:17

    So, ich hab mir jetzt mal _FileListToArray. Ich denke, dass ich damit die variable $code auseinander nehmen muss, und das diese Informationen in Arrays geschrieben werden. Richtig?

  • Excel nach PDF konvertieren?

    • Sirius
    • 7. Februar 2014 um 07:24

    Hi Andy!

    in $code stehen die gewählten Dateinamen getrennt durch einen │. Also Test.xlsx│Test2.xls│Test3.xlsx

  • Excel nach PDF konvertieren?

    • Sirius
    • 6. Februar 2014 um 15:24

    Hallo zusammen.

    Ich muss das Thema nochmal anschreiben! :) Ich hab mir jetzt mal was gebastelt. Leider komme ich jetzt nicht mehr weiter. Hier erstmal mein Script (Achtung ich bin Anfänger!:(

    Spoiler anzeigen


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <WindowsConstants.au3>
    #include <Excel.au3>
    #include <excelex.au3>
    #Region ### START Koda GUI section ### Form=c:\users\schirmer\desktop\exceldoku2pdf.kxf
    $exceldoku2pdf = GUICreate("exceldoku2pdf", 615, 438, 191, 124)
    $Convert = GUICtrlCreateButton("Convert", 112, 264, 113, 49)
    $Exit = GUICtrlCreateButton("Exit", 384, 264, 115, 49)
    $Progress1 = GUICtrlCreateProgress(160, 344, 313, 33)
    $Oeffnen = GUICtrlCreateButton("Öffnen", 264, 144, 73, 49)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###


    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Exit
    beenden()

    Case $oeffnen
    oeffnen()

    Case $Convert
    convert()

    EndSwitch
    WEnd

    Func oeffnen()
    Global $code = FileOpenDialog("Wähle XLSX oder XLS Datei aus!",@StartupDir, "(*.xlsx;*.xls)",1 + 4)

    EndFunc

    Func convert()

    Local $oExcel = _ExcelBookOpen($code)
    Local $vSheet = 1

    If @error = 1 Then
    MsgBox(0, "Fehler!", "Das Excel-Objekt konnte nicht erstellt werden.")
    Exit
    ElseIf @error = 2 Then
    MsgBox(0, "Fehler!", "Die Datei existiert nicht.")
    Exit
    EndIf
    _ExcelSheetActivate($oExcel, $vSheet)
    $NewFilepath = $code
    $fileformat = 57

    With $oExcel
    .Application.DisplayAlerts = False
    .ActiveWorkBook.SaveAs($NewFilepath, $Fileformat)
    EndWith

    msgbox(0,"Done","Die Datei wurde in PDF convertiert")
    Sleep(50)
    _ExcelBookClose($oExcel, 1)
    Sleep(50)
    ProcessClose("excel.exe")
    Local $PID = ProcessExists("excel.exe")
    If $PID Then ProcessClose($PID)

    EndFunc

    Func beenden()
    Exit
    EndFunc

    Ich möchte, dass man mehrere XLSX oderXLS Dateien aufwählen kann. Sobald ich aber mehr als eine Datei auswähle, sagt das Script, dass die Datei nicht vorhanden ist.
    Wie bekomme ich das hin, damit ich mehrere Dateien nacheinander in PDF Konvertieren kann?

    Vielen Dank!

  • Excel nach PDF konvertieren?

    • Sirius
    • 31. Januar 2014 um 11:00

    Hi qwert23!

    Also besteht nicht die Möglichkeit alle Arbeitsmappen in denen etwas geschrieben ist gleichzeitig in eine PDF zu konvertieren?

  • Excel nach PDF konvertieren?

    • Sirius
    • 31. Januar 2014 um 10:03

    Hi gwert23!

    Vielen Dank, funzt! :) Kann man dem Script auch sagen, dass es nicht nur die Tabelle 1 sonder, wenn was in Tabelle 2 und 3 was steht, dass er das auch in ein PDF umwandelt?
    So wie gesamte Arbeitsmappe drucken.

    Gruß
    Sirius

  • Excel nach PDF konvertieren?

    • Sirius
    • 31. Januar 2014 um 08:27

    Hallo zusammen!

    Mich interessiert das Thema auch. Leider bekomme ich es nicht ans laufen.
    Hab das genannte Beispiel mal getestet.
    Variable $i ist auch nicht deklariert.
    Das Script öffnet zwar die test1.xlsx und gibt gespeichert in der MsgBox aus, aber eine PDF finde ich nicht.

    Gruß
    Sirius

  • Textabfrage GUICtrlread

    • Sirius
    • 21. Dezember 2013 um 17:05

    Ich versteh im Ganzen nicht, was da passiert. Ich weiß auch nicht, wie ich die .ini aufbauen muss. Wie gesagt, ich bin Anfänger.

    Namen.ini

    [Namen]
    1=Ralf
    2=Peter
    3=Nadine

    ist das so richtig?

    Ich versteh auch nicht, wie ich das jetzt umschreiben soll. Also von meinem:

    [autoit]

    If Not (GUICtrlRead($Name) = "Ralf") Then
    MsgBox(16,"FEHLER","Namen nicht bekannt!")
    ContinueLoop
    EndIf

    [/autoit]

    auf das, was du gemacht hast.

  • Textabfrage GUICtrlread

    • Sirius
    • 21. Dezember 2013 um 16:50

    Hi Make-Grafik.

    Vielen Dank für deine Antwort, aber blicke ich nicht durch! :(

  • Textabfrage GUICtrlread

    • Sirius
    • 21. Dezember 2013 um 16:11

    Hallo hab doch nochmal ne Frage zu dem Thema.
    Könnte ich mit Iniread arbeiten?
    Ich erstelle eine .ini wo alle Namen aufgelistet sind.

    [autoit]


    If Not (GUICtrlRead($Name) = "Ralf") Then
    MsgBox(16,"FEHLER","Namen nicht bekannt!")
    ContinueLoop
    EndIf

    [/autoit]

    Jetzt soll da, wo "Ralf" steht, die .ini nach dem Namen durchsucht werden. Wenn der Name nicht in die .ini existiert dann Fehlermeldung.
    Hab leider noch nie mit Iniread gearbeitet, weil ich Anfänger bin.

    Oder gibt es eine andere Möglichkeit sowas umzusetzten?

    Geht sowas?

    Vielen Dank!

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™