Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Excel. Проблема с Evaluate / 3 сообщений из 3, страница 1 из 1
11.05.2006, 15:54
    #33720785
nibbles
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Проблема с Evaluate
В Excel 2000 в VBA-модуле имеется следующий код (на самом деле код сложнее, но это - суть, просто чтоб смогли поэкспериментировать, буде такое желание):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Public Function AutoStart() As String
Dim myRange     As Range
On Error Resume Next
    
    ' Скрыть строки с 5 по 8
    Set myRange = Rows("5:8")
    myRange.EntireRow.Hidden = True
    ' Окрасить ячейки с 10 по 14
    Set myRange = Rows("10:14")
    myRange.Interior.ColorIndex =  24 
        
    If Err.Number <>  0  Then
        myRange.Cells( 1 ,  1 ) = "Произошла следующая ошибка - " & Err.Description
    Else
        myRange.Cells( 1 ,  1 ) = "Я отработал без ошибок!"
    End If
    
End Function

В стороннем приложении (Access) имеется следующий код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Public Function ufMyTes() as Boolean
Dim xlsApp          As Excel.Application
Dim xlsBook         As Excel.Workbook

    Set xlsApp = New Excel.Application
    Set xlsBook = xlsApp.Workbooks.Add("C:\test.xls")

    xlsApp.Evaluate "CALL AutoStart()"

    xlsApp.Visible = True

    Set xlsBook = Nothing
    Set xlsApp = Nothing
end function

Проблема : При запуске функции ufMyTes рабочая книга успешно открывается и метод Evaluate запускатеся функцию AutoStart без ошибок до конца - на рабочем листе появляется строка "Я отработал без ошибок". Однако, методы диапазона Hidden и ColorIndex не срабатывают (т.е. лист остается неизменным).
При этом, если запустить функцию AutoStart в ручную, то методы отрабатывают на ура...
Из-за чего может быть проблема? Визибле ставил как до так и после Evaluate - не помогает.
...
Рейтинг: 0 / 0
11.05.2006, 16:43
    #33720941
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Проблема с Evaluate
первый раз встречаю что бы для запуска процедуры использавался Evalute
Код: plaintext
xlsApp.Run "AutoStart" 
работает без проблем
...
Рейтинг: 0 / 0
11.05.2006, 18:03
    #33721182
nibbles
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel. Проблема с Evaluate
vkodorпервый раз встречаю что бы для запуска процедуры использавался Evalute
Код: plaintext
xlsApp.Run "AutoStart" 
работает без проблем
Я знаю про Run
Но сейчас изучаю Evalute
Все равно, спасибо огромное
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Excel. Проблема с Evaluate / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]