Назва робочої книги VBA (Отримати, встановити, без розширення)

Цей підручник продемонструє, як отримати та встановити назву книги у VBA.

Ми можемо отримати або встановити ім’я активної книги у VBA або переглянути всі відкриті книги в Excel, а також отримати або встановити ім’я кожної з них за допомогою циклу VBA.

Отримайте назву робочої книги

Щоб отримати назву активної книги, нам потрібно використовувати властивість name об’єкта книг.

12345 Sub GetWorkbookName ()Dim strWBNіменується як рядокstrWBName = ActiveWorkbook.NameMsgBox strWBNameEnd Sub

Якби ми запустили код вище, ми побачили б на екрані вікно повідомлення з назвою Активної книги.

Щоб переглянути всі активні книги та повернути назви книг до Excel, ми можемо запустити такий код:

1234567 Sub GetWorkbookNames ()Dim wb Як робочий зошитДля кожного wb у робочих зошитахActiveCell = wb.NameActiveCell.Offset (1, 0) .ВиберітьДаліEnd Sub

Наведені вище приклади включатимуть розширення файлу (наприклад, xlsx). Якщо ви не хочете включати розширення, можна скористатися кількома методами, щоб отримати лише ім’я файлу книги.

Отримати ім’я робочої книги без розширення

Ми можемо використовувати функції LEFT та INSTR для видалення будь -яких символів після крапки у назві файлу:

12345 Sub GetWorkbookName ()Dim strWBNіменується як рядокstrWBName = Ліворуч (ActiveWorkbook.Name, InStr (ActiveWorkbook.Name, ".") - 1)MsgBox strWBNameEnd Sub

Ми можемо використовувати функції LEFT та LEN, щоб видалити 5 символів з кінця імені файлу:

12345 Sub GetWorkbookName ()Dim strWBNіменується як рядокstrWBName = Ліворуч (ActiveWorkbook.Name, Len (ActiveWorkbook.Name) - 55)MsgBox strWBNameEnd Sub

Встановлення назви робочої книги

Щоб встановити ім'я книги у VBA, ми все ще використовуємо властивість Name книги, однак ми не можемо використовувати цей метод для зміни імені активної книги. Це пов'язано з тим, що активна книга відкрита, і виникне помилка доступу до файлу. Щоб подолати це, ми можемо зберегти файл з новою назвою, а потім видалити старий файл.

12345678910 Публічний підмножинаWorkbookName ()Затемнити strPath як рядокDim strNewName As StringDim strOldName As StringstrOldName = ActiveWorkbook.NamestrNewName = InputBox ("Будь ласка, введіть нову назву для робочої книги")strPath = ActiveWorkbook.PathActiveWorkbook.SaveAs strPath & "/" & strNewNameУбийте strPath & "/" & strOldNameEnd Sub

Щоб перейменувати книгу, яка не відкрита, ми можемо використовувати метод Ім'я.

123 Загальнодоступне перейменування робочої книги ()Назвіть "C: \ Data \ MyFile.xlsx" Як "C: \ Data \ MyNewFile.xlsx"End Sub

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave