Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel: открытие файла / 4 сообщений из 4, страница 1 из 1
29.08.2006, 17:31:04
    #33950525
Secundra Dass
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel: открытие файла
Открываю файл:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Sub Телефон()
    Dim xlApp As Object, xlBook As Variant, xlSheet As Object
        
    Set xlApp = CreateObject("Excel.Application")
    xlApp.Workbooks.Open ActiveWorkbook.Path & "\телефоны.xls"
    xlApp.Visible = True

End Sub

Проблема в том, что при каждом выполнении программы открывается новая копия файла. Что нежелательно, т.к. прога выполнется по 10-20 раз.

Можно ли как-нибудь проверить, открыт ли файл, и если да, то второй раз не открывать? Или как-то еще выйти из ситуации...
...
Рейтинг: 0 / 0
29.08.2006, 17:35:08
    #33950541
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel: открытие файла
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Function FileAlreadyOpened(FName As String) As Boolean
    FileAlreadyOpened = False
    For intI =  1  To Workbooks.Count
        If Workbooks(intI).Name Like FName Then
            FileAlreadyOpened = True
        End If
    Next intI
End Function
...
Рейтинг: 0 / 0
29.08.2006, 17:42:34
    #33950573
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel: открытие файла
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Sub pr()
    If WorkbookIsOpen("телефоны.xls") Then MsgBox "файл открыт"
End Sub

Private Function WorkbookIsOpen(wbname As String) As Boolean 
    'функция проверки отрыт файл или нет
    Dim OpenBook As Workbook

    On Error Resume Next
    Set OpenBook = Workbooks(wbname)
    If Err =  0  Then
        WorkbookIsOpen = True
        Else: WorkbookIsOpen = False
    End If
End Function
...
Рейтинг: 0 / 0
29.08.2006, 17:47:40
    #33950594
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel: открытие файла
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Sub Телефон()
    Dim xlApp As Object, xlBook As Variant, xlSheet As Object
        
    Set xlApp = CreateObject("Excel.Application")
    xlApp.Workbooks.Open ActiveWorkbook.Path & "\телефоны.xls"
    xlApp.Visible = True
    xlApp.Workbooks("телефоны.xls").Close
    Set xlApp = Nothing
End Sub
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel: открытие файла / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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