Что нового

Не работает _Excel_BookOpen(...)

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Stalevar
Так не работает.
Прекрасно всё работает
Код:
#include <Excel.au3>

FileWrite(@ScriptDir & "\TestExcel.xls", "")

$oExcel = _Excel_Open()
$sWorkbook = @ScriptDir & "\TestExcel.xls"
; $oWorkbook = _Excel_BookOpen($oExcel, $sWorkbook) ; <= было
$oWorkbook = _Excel_BookOpenEX($oExcel, $sWorkbook) ; <= стало

Func _Excel_BookOpenEX($oExcel, $sFilePath, $bReadOnly = Default, $bVisible = Default, $sPassword = Default, $sWritePassword = Default, $bUpdateLinks = Default)
    ; Error handler, automatic cleanup at end of function
    Local $oError = ObjEvent("AutoIt.Error", "__Excel_COMErrFunc")
    #forceref $oError
    If Not IsObj($oExcel) Or ObjName($oExcel, 1) <> "_Application" Then Return SetError(1, @error, 0)
    If Not FileExists($sFilePath) Then Return SetError(2, 0, 0)
    If $bReadOnly = Default Then $bReadOnly = False
    If $bVisible = Default Then $bVisible = True
    Local $oWorkbook = $oExcel.Workbooks.Open($sFilePath, $bUpdateLinks, $bReadOnly, Default, $sPassword, $sWritePassword)
    If @error Then Return SetError(3, @error, 0)
    Local $oWindow = $oExcel.Windows($oWorkbook.Name) ; <== Modified
    If IsObj($oWindow) Then $oWindow.Visible = $bVisible ; <== Modified
    ; If a read-write workbook was opened read-only then set @extended = 1
    If $bReadOnly = False And $oWorkbook.Readonly = True Then Return SetError(0, 1, $oWorkbook)
    Return $oWorkbook
EndFunc   ;==>_Excel_BookOpen
 

Stalevar

Новичок
Сообщения
31
Репутация
0
10,161) : error: _Excel_BookOpenEX() already defined.

Или ошибка и за того что я уже скопировал в Excel.au3 ?
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Stalevar
Или ошибка и за того что я уже скопировал в Excel.au3 ?
Удалите и проверьте - исчезнет ошибка или нет.
Если каждое своё предположение вы будете обсуждать на форуме, а не проверять экспериментально, то учиться вы будете очень долго.
 
Верх