Страницы: 1
RSS
Можно ли создать Workbook со своим именем?
 
Добрый день! Прошу помощи в таком вопросе. Создаю книги из vba коммандой Workbooks.Add    
Возможно ли создать книгу с именем отличным от КнигаN. Или как-то переименовать созданную книгу сразу после создания. Основная сложность (для меня) в том, что книгу надо переназвать, но не надо сохранять.  
Заранее благодарен за любую помощь!
 
{quote}{login=YuryK}{date=17.03.2012 03:59}{thema=Можно ли создать Workbook со своим именем?}{post}Основная сложность (для меня) в том, что книгу надо переназвать, но не надо сохранять.{/post}{/quote}В чем разница:  
- создали книгу, не сохранили, больше никаких действий;  
- создали книгу, переименовали, сохранили, больше никаких действий?  
 
Если книга не нужна, ее можно после определенных с ней действий удалить. Так же незаметно, как и создали.
 
А какой в этом смысл, если сохранятm ее не надо? Предполагаю, что нужно Вам совсем не это. Что бы дальше в коде обращаться к новой книге независимо от сгенерированного имени присвойте ее объектной переменной:  
Set MyTempWb=workbooks.add и обращайтесь к ней дальше MyTempWb.sheets(1)...  
Или с помощью конструкции with ... end with  
with workbooks.add  
.sheets(1)...  
...  
end with
Я сам - дурнее всякого примера! ...
 
Есть файл данных в процессе работы создаются отчеты (промежуточные), которые открываются в новых книгах. После работы все это без сохранения удаляется. Проблема в том, что когда отчетов 10 и более, а все названия Книга1, Книга2 и т.д. запомнить где какой очень проблематично, приходится все книги перебирать, вот и хочется имена присваивать.    
А без сохранения никак? В принципе вопрос не критичный, но не хочется каждый раз выбирать в проводнике пусть и сохранять, а потом так же удалять.
 
Попробуйте такой вариант...  
   Dim x As String  
   Dim i As Long  
   On Error Resume Next  
   For i = 1 To 10  
       x = Application.UserName & i  
   Next  
   Workbooks.Add  
   ActiveWorkbook.SaveAs Filename:=x
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
 
Полный изврат. Почему не создавать листы а не книги? И именуйте их как хотите. А уже потом, то что нужно, переносить в новую книгу и сохранять ее. Или насоздавайте шаблонов(изврат, но если очень хочется...) и добавляйте:  
Workbooks.Add Template:= "C:\Templates\ежик.xlt"  
:-)
Я сам - дурнее всякого примера! ...
 
Согласен и нет одновременно. Листы можно, но не хочется т.к. в основном файле их хватает и суть именно в том чтобы больше туда ничего не добавлять, да и к тому же отчеты содержат по несколько листов, а работа в одной книге с 30-40 листами удовольствие ведущее к нервному срыву. Про шаблоны согласен польностью без комментариев :)    
Резюме: Моя хотелка не реализуется без дополнительных телодвижений. Тема закрыта.  
Спасибо всем за помощь!
 
гм...  
 
а вот так?  
 
Sub xx()  
 Set wb = Workbooks.Add  
 wb.Windows(1).Caption = "fryerye"  
End Sub
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
А вот так получилось именно то, что нужно.  
Спасибо огромное!
Страницы: 1
Читают тему
Наверх