Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.01;
Скачать: CL | DM;

Вниз

Переименовать xls-файл, не сохраняя его на диске   Найти похожие ветки 

 
Ольга   (2005-12-13 08:47) [0]

Excel по умолчанию задает имя "Книга1". Как его поменять изначально до сохранения (пользователь, возможно, не будет  сохранять файл), чтобы не замусоривать машину?
Я умею только с сохранением:

 Excel:= CreateOleObject("Excel.Application");
 Excel.WorkBooks.Add;
 Excel.ActiveWorkBook.SaveAs("NewName.xls");


 
Anatoly Podgoretsky ©   (2005-12-13 08:49) [1]

Если нет на диске, то нет и файла.
А раз нет файла, то и переименовывать нечего.
А если переименовывать нечего, то не ломай себе голову.


 
Ольга   (2005-12-13 09:27) [2]

Имя файла, если его пользователь сохраняет, должно иметь определенную структуру:  OBJECT_YYYYMMDD.xls  Сейчас это имя пользователь набивает ручками, что не есть хорошо. Сразу сохранять тоже плохо - файлов может быть сотни, нужных - десяток.
Где-то же сидит в Excel эта "Книга1"?


 
evvcom ©   (2005-12-13 09:29) [3]


> Где-то же сидит в Excel эта "Книга1"?

Сидит. Открой VB и пошарь по свойствам книги/документа.


 
msguns ©   (2005-12-13 09:59) [4]

А запустить "магнитофон" не судьба ?


 
Ольга   (2005-12-13 10:09) [5]


> Сидит. Открой VB и пошарь по свойствам книги/документа.

Не нашла. Рабочая директория - есть, шаблон - есть, а имени файла - нет.

> А запустить "магнитофон" не судьба ?

Не поняла. Это что - прикол такой?


 
umbra ©   (2005-12-13 10:11) [6]

Книга1 сидит в Excel.Workbooks(1).Name


 
evvcom ©   (2005-12-13 10:12) [7]


> Не поняла. Это что - прикол такой?

Нет не прикол. Это запись макроса. Но вроде не поможет это.


 
Ольга   (2005-12-13 10:43) [8]


> Книга1 сидит в Excel.Workbooks(1).Name

Считать это свойство удалось (только скобки нужны квадратные), а корректировать его, видимо, нельзя.
Есть, например,  свойство, определяющее кол-во листов в новой книге:
Excel.SheetsInNewWorkBook:=1;
Может есть что-нибудь, типа:
Excel.NewWorkBookName:="NewName.xls" ?


 
evvcom ©   (2005-12-13 10:52) [9]


> а корректировать его, видимо, нельзя.

"Видимо" или нельзя? Что пишет? Точный текст.


 
msguns ©   (2005-12-13 11:13) [10]

Запускаем эксель.
Сервис->Макрос->Начать запись
Файл->Сохранить как->выбираем каталог и набираем вместо "Книга1" свое имя
Сервис->Макрос->Остановить
Сервис->Макрос->Макросы->выбираем из списка новый макрос->Войти

Видим примерно такое:

Sub Макрос1()
"
" Макрос1 Макрос
" Макрос записан 13.12.2005 (ms)
"

"
   ChDir "E:\MySampls\MDI_1"
   ActiveWorkbook.SaveAs Filename:="E:\MySampls\MDI_1\NewBook.xls", FileFormat _
       :=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
       False, CreateBackup:=False
End Sub

Дальше Copy+Paste


 
umbra ©   (2005-12-13 11:22) [11]

2 Ольга   (13.12.05 10:43) [8]

для того, чтобы книга создавалась с другим именем надо сначала создать файл-шаблон, а затем добавлять новые книги, используя его как шаблон, т.е.

Excel.WorkBooks.Add("c:\template.xls");

Тогда новые книги будут называться template1, template2 и т.д.


 
msguns ©   (2005-12-13 11:33) [12]

>umbra ©   (13.12.05 11:22) [11]
>Тогда новые книги будут называться template1, template2 и т.д.

В некоторых офисах будут траблы.


 
umbra ©   (2005-12-13 11:38) [13]

2 msguns ©   (13.12.05 11:33) [12]

в каких, если не секрет?



Страницы: 1 вся ветка

Текущий архив: 2006.01.01;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.04 c
4-1130686963
AllDontFire
2005-10-30 18:42
2006.01.01
есть SHBrowseForFolder с созданием папки?


6-1127233878
Galiaf
2005-09-20 20:31
2006.01.01
Сокеты "склеивают" сообщения!


2-1134464872
orsson
2005-12-13 12:07
2006.01.01
Помогите кто чем может


1-1133614064
Толян
2005-12-03 15:47
2006.01.01
Система счисления


1-1133517137
Oleg_358367
2005-12-02 12:52
2006.01.01
скорость for и while