Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 29.03.2008, 22:35   #1
ExcArt
Пользователь
 
Регистрация: 16.02.2008
Сообщений: 12
По умолчанию Список открытых файлов

Как узнать сабж? Собственно нужно определить открыт ли файл <filename>.xls с помощью VBA.
ExcArt вне форума
Старый 30.03.2008, 01:39   #2
Pavel55
Форумчанин
 
Регистрация: 21.08.2007
Сообщений: 292
По умолчанию

Код:
Sub Макрос1()
Dim myWB As Workbook
Dim FileName As String
    On Error Resume Next
    FileName = "Test.xls"
    Set myWB = Workbooks(FileName)
    If myWB Is Nothing Then
        MsgBox "Файл " & FileName & " закрыт!", vbExclamation, ""
    Else
        MsgBox "Файл " & myWB.Name & " открыт!", vbInformation, ""
    End If
End Sub
Pavel55 вне форума
Старый 30.03.2008, 01:43   #3
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Sub Test()
  s = InputBox("File name:", "Check it")
  On Error GoTo err
  If Workbooks(s).Name <> "" Then MsgBox s & " is OPEN"
  Exit Sub
err:
MsgBox "Not Open@"
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 30.03.2008, 11:06   #4
дмидми
Форумчанин
 
Аватар для дмидми
 
Регистрация: 06.03.2008
Сообщений: 352
По умолчанию

Код:
'Subj
Sub ListAll()
    'In VBA enter command "View -- Immediate Window" or Ctrl+G
    Dim wb As Workbook
    For Each wb In Workbooks
        Debug.Print wb.Name
    Next
End Sub

'Body
Function IsOpen(WorkbookName As String) As Boolean
    Dim Dummy As Workbook
    On Error Resume Next
    Set Dummy = Workbooks(WorkbookName)
    If Err Then Err.Clear Else IsOpen = True
End Function

Последний раз редактировалось дмидми; 30.03.2008 в 11:19. Причина: Чуть попроще.
дмидми вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ListBox - передача в список файлов. Kocapb C++ Builder 7 14.05.2010 19:28
Данные-проверка-список (список на другом листе) Inbox Microsoft Office Excel 7 26.12.2008 01:43
Получить список файлов выбранного каталога в MFC DPRO Visual C++ 2 17.08.2008 22:34
список всех открытых файлов и папок. Teleport Общие вопросы Delphi 4 22.06.2008 11:29
Список открытых портов Баламут Работа с сетью в Delphi 3 21.05.2008 10:17