Vba excel имена открытых книг

 

Inter_E

Пользователь

Сообщений: 399
Регистрация: 01.01.1970

Добрый день!  
Как можно Получить имя активной книги без его расширения (без ‘.xls’ or ‘xlsx’).    
Например АктивВоркбук.нэйм извлекает так «Книга.хлс» а нужно чтоб давало «Книга» и все.  
Спасибо заранее…

With my best regards,      Inter_E

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Привет.  
Public Sub qwe()  
Dim a As String, b As String  
b = ActiveWorkbook.Name  
a = Replace(b, «.xlsx», «»)  
If Len(a) = Len(b) Then a = Replace(b, «.xls», «»)  
End Sub

Я сам — дурнее всякого примера! …

 

Hugo

Пользователь

Сообщений: 23251
Регистрация: 22.12.2012

А если в середине названия такое встречается? У меня бывало :)  
Может лучше анализировать 4-5 последних символов и отрезать. Да и ещё регистр символов может быть разный…

 

Inter_E

Пользователь

Сообщений: 399
Регистрация: 01.01.1970

{quote}{login=KuklP}{date=17.08.2010 01:28}{thema=}{post}Привет.  
Public Sub qwe()  
Dim a As String, b As String  
b = ActiveWorkbook.Name  
a = Replace(b, «.xlsx», «»)  
If Len(a) = Len(b) Then a = Replace(b, «.xls», «»)  
End Sub{/post}{/quote}  

  Да Hugo прав, если в середине окажется? Мне тоже мысль отрезать в первую очередь приходило. Но это тоже не красивый вариант.    
Может все таки есть такой нормальная-официальная функция?

With my best regards,      Inter_E

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Ну если в середине названия оказывается «.xls», то можно только посочувствовать тому, кто так называет файлы и помянуть добрым словом старый добрый DOS:-)  
Так, что берите.

Я сам — дурнее всякого примера! …

 

Юрий М

Модератор

Сообщений: 60575
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=Inter_E ответ > KuklP}{date=17.08.2010 01:41}{thema=Re: }{post}{quote}{login=KuklP}{date=17.08.2010 01:28}{thema=}{post}{/post}{/quote}если в середине окажется? {/post}{/quote}  
Inter_E, да кому же такое в голову (не больную) придёт?! Согласен с Сергеем.

 

Юрий М

Модератор

Сообщений: 60575
Регистрация: 14.09.2012

Контакты см. в профиле

Вдогонку: файл называется xls.Книга1

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

{quote}{login=Юрий М}{date=17.08.2010 02:20}{thema=}{post}Вдогонку: файл называется xls.Книга1{/post}{/quote} Не катит — точка не там. Надо:  .xls.Книга1:-)

Я сам — дурнее всякого примера! …

 

Inter_E

Пользователь

Сообщений: 399
Регистрация: 01.01.1970

Кажется всетаки есть какая-та функция вроде «ActiveWorkbook.RootName» для получения только имени…  
Неужели, это конец vb?  
Может попросим великих знатоков еще?

With my best regards,      Inter_E

 

Юрий М

Модератор

Сообщений: 60575
Регистрация: 14.09.2012

Контакты см. в профиле

MsgBox Replace(Application.Caption, «Microsoft Excel -«, «»)  
MsgBox Split(Application.Caption, «-«)(1)

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

{quote}{login=Юрий М}{date=17.08.2010 03:07}{thema=}{post}MsgBox Replace(Application.Caption, «Microsoft Excel -«, «»)  
MsgBox Split(Application.Caption, «-«)(1){/post}{/quote}  
И что получится?

Я сам — дурнее всякого примера! …

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Так, наверное:  
MsgBox Split(Replace(Application.Caption, «Microsoft Excel -«, «»), «.»)(0)

Я сам — дурнее всякого примера! …

 

Inter_E

Пользователь

Сообщений: 399
Регистрация: 01.01.1970

{quote}{login=KuklP}{date=17.08.2010 03:24}{thema=}{post}Так, наверное:  
MsgBox Split(Replace(Application.Caption, «Microsoft Excel -«, «»), «.»)(0){/post}{/quote}  

  Огромное спасибо Вам Юрий, KukIP!  
Теперь вроде правильно работает,даже если там внутри присутствуют слова xls, xlsx!

With my best regards,      Inter_E

 

Inter_E

Пользователь

Сообщений: 399
Регистрация: 01.01.1970

{quote}{login=Inter_E ответ > KuklP}{date=17.08.2010 03:32}{thema=Re: }{post}{quote}{login=KuklP}{date=17.08.2010 03:24}{thema=}{post}Так, наверное:  
MsgBox Split(Replace(Application.Caption, «Microsoft Excel -«, «»), «.»)(0){/post}{/quote}  

  Огромное спасибо Вам Юрий, KukIP!  
Теперь вроде правильно работает,даже если там внутри присутствуют слова xls, xlsx!{/post}{/quote}  

  Я думаю кто то точно сталкнется с этой проблемой  
и она теперь решена  
а так искал вроде до этого не было на форуме подобной проблемы!

With my best regards,      Inter_E

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Ну, так проще — меньше бубнов:  
MsgBox Split(ThisWorkbook.Name, «.»)(0)

Я сам — дурнее всякого примера! …

 

Hugo

Пользователь

Сообщений: 23251
Регистрация: 22.12.2012

Тоже не универсально — ведь у человека может вдруг быть код  

  Private Sub Workbook_Open()  
   Application.Caption = » »  
   ActiveWindow.Caption = «Терпеть не могу — » & ThisWorkbook.Name  
End Sub  

  ну мало ли, терпеть не может Microsoft :)

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Но опять же, куча точек в названии не редкость. Вот, например с этого форума: CompareFiles.Find.Rus.v132.xls. Так, что вернулись на исходную.

Я сам — дурнее всякого примера! …

 

Hugo

Пользователь

Сообщений: 23251
Регистрация: 22.12.2012

Пока писал, Сергей нашёл вариант, обходящий «Терпеть не могу» :)

 

webley

Пользователь

Сообщений: 1995
Регистрация: 01.01.1970

еще вариант:  
Left(ActiveWorkbook.Name, InStrRev(ActiveWorkbook.Name, «.») — 1)

 

Hugo

Пользователь

Сообщений: 23251
Регистрация: 22.12.2012

Хм… у меня часто в названии точка используется вместо «_» …

 

Hugo

Пользователь

Сообщений: 23251
Регистрация: 22.12.2012

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Вот для придурошных имен:  
Sub Макрос1()  
‘ Макрос записан 17.08.2010 (Sergey)  
Dim a As String, v  
a = ThisWorkbook.Name  
v = Split(a, «.»)  
MsgBox Replace(a, «.» & v(UBound(v)), «»)  
End Sub

Я сам — дурнее всякого примера! …

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

У webley короче.

Я сам — дурнее всякого примера! …

 

Hugo

Пользователь

Сообщений: 23251
Регистрация: 22.12.2012

Да и с именем Bwdwqd.xls.jkkl.ook2.xls справился только webley.

 

Юрий М

Модератор

Сообщений: 60575
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=KuklP}{date=17.08.2010 03:18}{thema=Re: }{post}{quote}{login=Юрий М}{date=17.08.2010 03:07}{thema=}{post}{/post}{/quote}И что получится?{/post}{/quote}  
Нормально получится. Что не так?

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

то HUGO: Ну да.  
Юр, а у меня вместе с расширением заголовок. И МСГБОКС выдает его с расширением.

Я сам — дурнее всякого примера! …

 

А у меня вариант Юрия работает отлично, вот!  

  «39039»

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Так:

Я сам — дурнее всякого примера! …

 

Юрий М

Модератор

Сообщений: 60575
Регистрация: 14.09.2012

Контакты см. в профиле

Я же отталкивался от того, что вижу у себя :-)

 

Юрий М

Модератор

Сообщений: 60575
Регистрация: 14.09.2012

Контакты см. в профиле

#30

17.08.2010 16:17:17

Серж, ремонтируй свой MsgBox :-)

VBA List all Open Workbooks in Excel. It helps to know all open workbooks name. It is easy to handle and shift between workbooks. We have an option to open multiple workbooks in MS Office Excel. Let us see in the following tutorial how to list open Workbooks in Excel VBA.

Here is the following syntax to List all Open Workbooks in Excel VBA.

For Each Workbook in Application.Workbooks
      Statements...
Next

Where Workbook: It represents Workbook object which is part of workbooks collection.

VBA Code to List all Workbooks in Excel VBA

Let us see the following example macro to List all Open Workbooks in Excel VBA

'VBA List Open Workbooks in Excel
Sub VBA_List_All_Open_Workbooks()
    
    'Variable declaration
    Dim xWorkbook As Workbook
    Dim sWorkbookName As String
    Dim iCount As Integer
    
    'Intialise value to a variable
    iCount = 2
    
    Sheets("WB_Names").Range("A1") = "Names of Available Workbooks"
    
    'Loop through all workbooks
    For Each xWorkbook In Application.Workbooks
        Sheets("WB_Names").Range("A" & iCount) = xWorkbook.Name & vbCrLf
        
        'Increase value
        iCount = iCount + 1
    Next

End Sub

Instructions to Run VBA Macro Code or Procedure:

You can refer the following link for the step by step instructions.

Instructions to run VBA Macro Code

Other Useful Resources:

Click on the following links of the useful resources. These helps to learn and gain more knowledge.

VBA Tutorial VBA Functions List VBA Arrays in Excel Blog

VBA Editor Keyboard Shortcut Keys List VBA Interview Questions & Answers

Как получить названия открытых книг в ListBox

Stormy

Дата: Вторник, 09.09.2014, 12:44 |
Сообщение № 1

Группа: Проверенные

Ранг: Обитатель

Сообщений: 357


Репутация:

12

±

Замечаний:
0% ±


Excel 2010

Доброго времени суток, уважаемые форумчане.
Есть такой код:

[vba]

Код

Sub WorkBooksList()
    Dim book As Object
    ‘ Вывод имени каждой рабочей книги
    For Each book In Workbooks
       MsgBox (book.Name)
    Next
End Sub

[/vba]
В МеседжБоксе показывает названия открытых книг. Мне же нужно сделать, чтобы список открытых книг показывался в ListBox.
Пытаюсь сделать так:

[vba]

Код

Private Sub UserForm_Activate()
Dim kniqa As Workbook
Dim i
  i = 1
       For Each kniqa In Workbooks
       Me.ListBox1.List(i, 1) = kniqa.Name
      i = i + 1
    Next kniqa
End Sub

[/vba]
Только вот косячу где-то. Подскажите, пожалуйста, где?


Место для рекламы.

 

Ответить

SkyPro

Дата: Вторник, 09.09.2014, 13:32 |
Сообщение № 2

Группа: Друзья

Ранг: Старожил

Сообщений: 1206


Репутация:

255

±

Замечаний:
0% ±


2010

[vba]

Код

Private Sub UserForm_Activate()
Dim kniqa As Workbook
     For Each kniqa In Workbooks
         Me.ListBox1.AddItem kniqa.Name
     Next
End Sub

[/vba]


skypro1111@gmail.com

 

Ответить

Gustav

Дата: Вторник, 09.09.2014, 13:55 |
Сообщение № 3

Группа: Друзья

Ранг: Старожил

Сообщений: 2398


Репутация:

985

±

Замечаний:
0% ±


начинал с Excel 4.0, видел 2.1

Или сначала заполнить массив, а потом его разом присвоить List’у:
[vba]

Код

Private Sub UserForm_Activate()
Dim kniqa As Workbook
Dim arr()
Dim i
i = 1
      For Each kniqa In Workbooks
          ReDim Preserve arr(1 To i)
          arr(i) = kniqa.Name
          i = i + 1
      Next kniqa
      Me.ListBox1.List = arr
End Sub

[/vba]


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал GustavВторник, 09.09.2014, 13:55

 

Ответить

Stormy

Дата: Вторник, 09.09.2014, 14:54 |
Сообщение № 4

Группа: Проверенные

Ранг: Обитатель

Сообщений: 357


Репутация:

12

±

Замечаний:
0% ±


Excel 2010

Gustav, SkyPro,
Благодарю, уважаемые.
Теперь есть форма, на ней кнопка и листбокс ( с радиокнопками) , можно ли при нажатие на кнопку закрыть выбранные книги?


Место для рекламы.

 

Ответить

SkyPro

Дата: Вторник, 09.09.2014, 15:07 |
Сообщение № 5

Группа: Друзья

Ранг: Старожил

Сообщений: 1206


Репутация:

255

±

Замечаний:
0% ±


2010

Вот так должно работать:
[vba]

Код

Private Sub CommandButton1_Click()
For i = 0 To Me.ListBox1.ListCount — 1
     If Me.ListBox1.Selected(i) Then
         Workbooks(Me.ListBox1.List(i)).Close False
     End If
Next
End Sub

[/vba]


skypro1111@gmail.com

 

Ответить

Stormy

Дата: Вторник, 09.09.2014, 15:21 |
Сообщение № 6

Группа: Проверенные

Ранг: Обитатель

Сообщений: 357


Репутация:

12

±

Замечаний:
0% ±


Excel 2010

Сделал так

[vba]

Код

Private Sub CommandButton1_Click()
Dim i
For i = 0 To Me.ListBox1.ListCount — 1
     If Me.ListBox1.Selected(i) Then
         Workbooks(Me.ListBox1.List(i)).Close False
     End If
Next
Me.ListBox1.Clear
Dim kniqa As Workbook
     For Each kniqa In Workbooks
         Me.ListBox1.AddItem kniqa.Name
     Next

End Sub

[/vba]
Теперь обновляет список после того как выбранные книги были закрыты.
SkyPro, Благодарю за помощь beer


Место для рекламы.

 

Ответить

SkyPro

Дата: Вторник, 09.09.2014, 15:37 |
Сообщение № 7

Группа: Друзья

Ранг: Старожил

Сообщений: 1206


Репутация:

255

±

Замечаний:
0% ±


2010

Тогда уж лучше так: [vba]

Код

Private Sub CommandButton1_Click()
For i = 0 To Me.ListBox1.ListCount — 1
     If Me.ListBox1.Selected(i) Then
         Workbooks(Me.ListBox1.List(i)).Close False
         Me.ListBox1.RemoveItem (i)
     End If
Next
End Sub

[/vba]

А вообще, то рекомендую открывать справку по методам обьектов.


skypro1111@gmail.com

 

Ответить

Microsoft Excel позволяет открывать несколько книг одновременно, но переключаться между всеми открытыми книгами непросто. Поэтому вы можете перечислить все открытые книги в списке, чтобы легко переключаться между этими книгами в Excel. В этой статье мы покажем вам, как составить список всех открытых книг для удобной навигации в Excel.

Просто перечислите все открытые книги с VBA
Составьте список всех открытых книг и легко переключитесь на книгу с помощью VBA
Составьте список всех открытых книг и легко переходите к рабочей книге с помощью замечательного инструмента


Просто перечислите все открытые книги с VBA

В этом разделе вы узнаете, как использовать код VBA для вывода списка всех открытых книг в Excel.

1. Нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окно. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули.

2. Затем скопируйте и вставьте приведенный ниже код VBA в редактор кода.

VBA: список всех открытых имен книг в Excel

Sub ListWorkbooks()
	Dim Rng As Range
	Dim WorkRng As Range
	On Error Resume Next
	xTitleId = "KutoolsforExcel"
	Set WorkRng = Application.Selection
	Set WorkRng = Application.InputBox("Out put to (single cell)", xTitleId, WorkRng.Address, Type: = 8)
	Set WorkRng = WorkRng.Range("A1")
	xNum1 = Application.Workbooks.Count
	For i = 1 To xNum1
		xNum2 = Application.Workbooks(i).Sheets.Count
		WorkRng.Offset(i - 1, 0).Value = Application.Workbooks(i).Name
		For j = 1 To xNum2
			WorkRng.Offset(i - 1, j).Value = Application.Workbooks(i).Sheets(j).Name
		Next
	Next
End Sub

3. Запустите код VBA, нажав кнопку F5 ключ. в KutoolsforExcel диалоговом окне укажите ячейку для размещения списка книг, а затем щелкните значок OK кнопка. Смотрите скриншот:

Затем перечисляются все открытые книги с соответствующими листами.

Трудно обрабатывать код VBA? Вы можете добиться этого через третий метод с кликами.


Составьте список всех открытых книг и легко переключитесь на книгу с помощью VBA

Если вы хотите перечислить все книги, чтобы легко переключаться между ними, попробуйте использовать VBA следующим образом:

1. нажмите другой + F11 для открытия Microsoft Visual Basic для приложений окно. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули.

2. Скопируйте и вставьте следующий код VBA в открытое окно модуля.

Код VBA: перечислить все открытые книги и перейти к книге

Sub SelectWB()
	Dim xWBName As String
	Dim xWb As Workbook
	Dim xSelect As String
	For Each xWb In Application.Workbooks
		xWBName = xWBName & xWb.Name & vbCrLf
	Next
	xTitleId = "KutoolsforExcel"
	xSelect = Application.InputBox("Enter one of the workbooks below:" & vbCrLf & xWBName, xTitleId, "", Type: = 2)
	Application.Workbooks(xSelect).Activate
End Sub

3. нажмите F5 ключ для запуска кода. Потом KutoolsforExcel появится диалоговое окно со списком всех открытых книг. Если вы хотите перейти к указанной книге, введите имя этой книги в поле и нажмите кнопку OK кнопка. Смотрите скриншот:


Составьте список всех открытых книг и легко переходите к рабочей книге с помощью замечательного инструмента

Для Панель навигации of Kutools for Excel, все открытые книги будут автоматически перечислены на панели, чтобы вы могли легко перемещаться между всеми открытыми книгами. Вам просто нужно щелкнуть одну из открытых книг, и она сразу же перейдет к этой книге.

  Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Студворк — интернет-сервис помощи студентам

Добрый вечер! На последнем этапе стопор.
Есть файл, в модуле книги при запуске след.алгоритм:
1) Часть 1. Проверяем, запущена ли надстройка. Для этого обращаемся к ней по уже известному имени и запускаем проверочный макрос, который записан в стандартном модуле надстройки. В макросе одно сообщение: «Я работаю». Если успешно — выход, если нет — часть 2.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub Workbook_Open()
 'ЧАСТЬ 1. Проверяем, открыта ли надстройка
 On Error Resume Next
'Проверочная операция: если надстройка уже подключена, то выполняется проверочный макрос из нее.
   Run "URDP.xlam!proverka"
'Тогда код ошибки будет = 0
    If Err = 0 Then
                    Application.DisplayAlerts = True
                    Exit Sub
    End If
End Sub

2) Часть 2. Во второй части прописан путь хранения надстройки, программа обращается к нему, открывает файл и снова выполняет проверочный макрос (эту часть прописала, чтобы убедиться, что файл надстройки никуда не переместили). Успешно — выход, нет — часть 3.
3) Часть 3. Появляется окно и предлагает самостоятельно выбрать файл надстройки.

Все работало ровно до тех пор, пока не пришла в голову мысль, а что будет, если:
1) переименовать файл надстройки;
1) сначала открыть надстройку;
2) открыть файл.
В этом случае происходит логичное действие — две вкладки: запущенная нами с новым именем надстройка и вторая (со старым именем), что вызывается самим файлом.

Попыталась исправить Часть 1 так:
Обращаемся к каждой книге, если ее расширение .xlam, то пытаемся запустить проверочный макрос с ее именем. Если макрос выполняется, то выходим. Если не выполняется, переходим к части 2 и 3.
Результат — провал.

1) Способ 1

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub Workbook_Open()
Dim wb As Workbook
 'ЧАСТЬ 1. Проверяем, открыта ли надстройка
For Each wb In Workbooks
    If wb.Name Like "*" & ".xlam" & "*" Then
                  On Error Resume Next
'Проверочная операция: если надстройка подключена, то выполняется проверочный макрос из нее.
                Run wb.Name & "!proverka"
                 If Err = 0 Then
                            MsgBox "Успешно"
                            Exit Sub
                End If
    End If
Next
End Sub

2) Способ 2

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub Workbook_Open()
Dim m As AddIn
 'ЧАСТЬ 1. Проверяем, открыта ли надстройка
For Each m In AddIns
    If m.Name Like "*" & ".xlam" & "*" Then
                  On Error Resume Next
'Проверочная операция: если надстройка подключена, то выполняется проверочный макрос из нее.
                Run m.Name & "!proverka"
                 If Err = 0 Then
                            MsgBox "Успешно"
                            Exit Sub
                End If
    End If
Next
End Sub

Пробовала вызвать сообщением все книги и надстройки. В списке ее не показывает. Если в самой надстройке при ее запуске вписать thisworkbook.name, то показывает, конечно.
Что я делаю не так и как надо? Подскажите, пожалуйста.

Понравилась статья? Поделить с друзьями:
  • Vba excel имена всех файлов в папке
  • Vba excel изменить размер массива
  • Vba excel защита листа с паролем
  • Vba excel изменить ширину столбца
  • Vba excel изменить кодировку