Probleme mit _Excelbookopen

  • 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

    Einmal editiert, zuletzt von Sirius (25. November 2014 um 07:52)

  • 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

  • AutoIt 3.3.8.1 enthält die "alte" Version der UDF, danach wurde eine komplett neu geschriebene Version mit ausgeliefert.
    Die AutoIt Doku -> Change History listet die Änderungen.

  • 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

  • Hab nur Office 2010 und kann daher leider nicht testen.
    Mit einem COM error handler kriegst Du genaue Infos über den Fehler.
    Schau mal in der Hilfe unter ObjEvent nach für ein Beispiel.