powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel: открытие файла
4 сообщений из 4, страница 1 из 1
Excel: открытие файла
    #33950525
Secundra Dass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Открываю файл:

Код: 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
Excel: открытие файла
    #33950541
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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
Excel: открытие файла
    #33950573
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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
Excel: открытие файла
    #33950594
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel: открытие файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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