Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/сохранение файла с сегодняшней датой и названием объекта - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » сохранение файла с сегодняшней датой и названием объекта (Макросы/Sub)
сохранение файла с сегодняшней датой и названием объекта
nifra Дата: Среда, 18.06.2014, 13:24 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 162
Репутация: 0 ±
Замечаний: 40% ±

День добрый, нашел макрос в интернете.
Все работает, но нужно немного подредактировать его

1) можно ли задать какую-нить комбинацию клавиш, чтоб этот макрос совершался ( любую, к примеру alt+v)
2) нужно чтобы название файла бралось из ячейки ( к примеру А1 листа 1) и вставлялось при сохранении файла
3) Чтобы в названии файла всегда присутствовала аббревиатура "СБ"
Т.е. при сохранении файла должно получиться следующее: "название из ячейки" + "СБ" + "сегодняшняя дата".
название исходного файла или "Копия" быть не должно.
Заранее спасибо.

[vba]
Код
Sub Макрос1()  
Dim Wb As Workbook  
Dim WbName As String  
Dim iPath As String  
Dim iFileName As String  
Set Wb = ActiveWorkbook  
WbName = Wb.Name  
iPath = ThisWorkbook.Path & "\"  
iFileName = Left(WbName, Len(WbName) - 4) + "_" + Format(Date, "yyyy/mm/dd") + ".xls"  
'для проверки существования такого же файла  
If Dir(iPath + iFileName) <> "" Then  
MsgBox "Копия файла c датой " & Format(Date, "yyyy/mm/dd") & " в директории " & Chr(13) & iPath$ & " уже существует!", vbExclamation  
Exit Sub  
End If  
Wb.SaveCopyAs (iPath + iFileName)  
End Sub
[/vba]
 
Ответить
СообщениеДень добрый, нашел макрос в интернете.
Все работает, но нужно немного подредактировать его

1) можно ли задать какую-нить комбинацию клавиш, чтоб этот макрос совершался ( любую, к примеру alt+v)
2) нужно чтобы название файла бралось из ячейки ( к примеру А1 листа 1) и вставлялось при сохранении файла
3) Чтобы в названии файла всегда присутствовала аббревиатура "СБ"
Т.е. при сохранении файла должно получиться следующее: "название из ячейки" + "СБ" + "сегодняшняя дата".
название исходного файла или "Копия" быть не должно.
Заранее спасибо.

[vba]
Код
Sub Макрос1()  
Dim Wb As Workbook  
Dim WbName As String  
Dim iPath As String  
Dim iFileName As String  
Set Wb = ActiveWorkbook  
WbName = Wb.Name  
iPath = ThisWorkbook.Path & "\"  
iFileName = Left(WbName, Len(WbName) - 4) + "_" + Format(Date, "yyyy/mm/dd") + ".xls"  
'для проверки существования такого же файла  
If Dir(iPath + iFileName) <> "" Then  
MsgBox "Копия файла c датой " & Format(Date, "yyyy/mm/dd") & " в директории " & Chr(13) & iPath$ & " уже существует!", vbExclamation  
Exit Sub  
End If  
Wb.SaveCopyAs (iPath + iFileName)  
End Sub
[/vba]

Автор - nifra
Дата добавления - 18.06.2014 в 13:24
igrtsk Дата: Среда, 18.06.2014, 14:05 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 314
Репутация: 50 ±
Замечаний: 0% ±

Excel 2016
2) нужно чтобы название файла бралось из ячейки ( к примеру А1 листа 1) и вставлялось при сохранении файла

Неплохо бы файл приложить (см.правила форума)


Инструктор по применению лосей в кавалерийских частях РККА
 
Ответить
Сообщение
2) нужно чтобы название файла бралось из ячейки ( к примеру А1 листа 1) и вставлялось при сохранении файла

Неплохо бы файл приложить (см.правила форума)

Автор - igrtsk
Дата добавления - 18.06.2014 в 14:05
DJ_Marker_MC Дата: Среда, 18.06.2014, 14:15 | Сообщение № 3
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
Название файла в макросе ниже берется с "Лист1" ячейка "а1"
[vba]
Код
Sub Макрос1()
Dim Wb As Workbook
Dim WbName As String
Dim iPath As String
Dim iFileName As String
Set Wb = ActiveWorkbook
WbName = Wb.Name
iPath = ThisWorkbook.Path & "\"
iFileName = Worksheets("Лист1").[a1].Value + "_" + "СБ" + "_" + Format(Date, "yyyy/mm/dd") + ".xls"
'для проверки существования такого же файла
If Dir(iPath + iFileName) <> "" Then
MsgBox "Копия файла c датой " & Format(Date, "yyyy/mm/dd") & " в директории " & Chr(13) & iPath$ & " уже существует!", vbExclamation
Exit Sub
End If
Wb.SaveCopyAs (iPath + iFileName)
End Sub
[/vba]

а запуск макроса по сочетанию клавиш, нужно настроить. В екселе с данным макросом нажмите ALT+F8 выберите свой "Макрос1" и зайдите в параметры, тут и укажите сочетание клавиш для его запуска


Сообщение отредактировал DJ_Marker_MC - Среда, 18.06.2014, 14:18
 
Ответить
СообщениеНазвание файла в макросе ниже берется с "Лист1" ячейка "а1"
[vba]
Код
Sub Макрос1()
Dim Wb As Workbook
Dim WbName As String
Dim iPath As String
Dim iFileName As String
Set Wb = ActiveWorkbook
WbName = Wb.Name
iPath = ThisWorkbook.Path & "\"
iFileName = Worksheets("Лист1").[a1].Value + "_" + "СБ" + "_" + Format(Date, "yyyy/mm/dd") + ".xls"
'для проверки существования такого же файла
If Dir(iPath + iFileName) <> "" Then
MsgBox "Копия файла c датой " & Format(Date, "yyyy/mm/dd") & " в директории " & Chr(13) & iPath$ & " уже существует!", vbExclamation
Exit Sub
End If
Wb.SaveCopyAs (iPath + iFileName)
End Sub
[/vba]

а запуск макроса по сочетанию клавиш, нужно настроить. В екселе с данным макросом нажмите ALT+F8 выберите свой "Макрос1" и зайдите в параметры, тут и укажите сочетание клавиш для его запуска

Автор - DJ_Marker_MC
Дата добавления - 18.06.2014 в 14:15
nifra Дата: Среда, 18.06.2014, 14:51 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 162
Репутация: 0 ±
Замечаний: 40% ±

DJ_Marker_MC, Уважаемый, спасибо.

А не подскажите ещё момент.
Если в макросе я меня формат на .xlsx, то возникает ошибка.

А если открываю файл то у меня вылезает окошко с предупреждением.

Вроде разобрался.
Дело в том что изначально у меня в моем файле выполняется макрос другой ещё. И файл имеет расширение xlsm - и при выполнении макроса в xls - он открывает с предупреждением, а в xlsx - ошибка.
Решил проблему. тем, что исходный файл xlsm перевел в формат xlsx. Но все равно странно, что ошибка была.
К сообщению приложен файл: 5107881.jpg (12.9 Kb) · 8556742.jpg (12.3 Kb)


Сообщение отредактировал nifra - Среда, 18.06.2014, 15:25
 
Ответить
СообщениеDJ_Marker_MC, Уважаемый, спасибо.

А не подскажите ещё момент.
Если в макросе я меня формат на .xlsx, то возникает ошибка.

А если открываю файл то у меня вылезает окошко с предупреждением.

Вроде разобрался.
Дело в том что изначально у меня в моем файле выполняется макрос другой ещё. И файл имеет расширение xlsm - и при выполнении макроса в xls - он открывает с предупреждением, а в xlsx - ошибка.
Решил проблему. тем, что исходный файл xlsm перевел в формат xlsx. Но все равно странно, что ошибка была.

Автор - nifra
Дата добавления - 18.06.2014 в 14:51
RAN Дата: Среда, 18.06.2014, 16:56 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Абсолютно ничего странного.
Формат сохранения по умолчанию в 2007+ xlsx
Вы в нем и сохраняли, только расширение принудительно на xls меняли
F1 способствует пониманию


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеАбсолютно ничего странного.
Формат сохранения по умолчанию в 2007+ xlsx
Вы в нем и сохраняли, только расширение принудительно на xls меняли
F1 способствует пониманию

Автор - RAN
Дата добавления - 18.06.2014 в 16:56
DJ_Marker_MC Дата: Среда, 18.06.2014, 17:00 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
А в целом с недавних пор пользуюсь xlsb
Очень удобный формат и плюс ко всему не взламываемый программами по взлому паролю.
 
Ответить
СообщениеА в целом с недавних пор пользуюсь xlsb
Очень удобный формат и плюс ко всему не взламываемый программами по взлому паролю.

Автор - DJ_Marker_MC
Дата добавления - 18.06.2014 в 17:00
nifra Дата: Среда, 18.06.2014, 18:00 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 162
Репутация: 0 ±
Замечаний: 40% ±

Вот выкладываю файл. в нем при нажатии на картинку выполняется макрос, который выделяет нужные мне слова в красный цвет в одной ячейке (согласно словарю)
Файл формата xlsm.

Второй макрос, тот что выложили здесь. только я поменял формат на xlsx и после этого файл не открывается созданный файл. работает на клавишу (ctrl+q).
Если в макросе оставить xls, то при открытии будет предупреждение.
Можно как то обойти все это дело (предупреждения) ?

Если я исходный свой файл сохраняю в xlsx, то макрос по выделению цветом не работает.
К сообщению приложен файл: 2448741.xlsm (37.2 Kb)


Сообщение отредактировал nifra - Среда, 18.06.2014, 18:02
 
Ответить
СообщениеВот выкладываю файл. в нем при нажатии на картинку выполняется макрос, который выделяет нужные мне слова в красный цвет в одной ячейке (согласно словарю)
Файл формата xlsm.

Второй макрос, тот что выложили здесь. только я поменял формат на xlsx и после этого файл не открывается созданный файл. работает на клавишу (ctrl+q).
Если в макросе оставить xls, то при открытии будет предупреждение.
Можно как то обойти все это дело (предупреждения) ?

Если я исходный свой файл сохраняю в xlsx, то макрос по выделению цветом не работает.

Автор - nifra
Дата добавления - 18.06.2014 в 18:00
DJ_Marker_MC Дата: Среда, 18.06.2014, 18:03 | Сообщение № 8
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
nifra, xlsx - не поддерживает макросы.
А что если сохранять в xlsm?
 
Ответить
Сообщениеnifra, xlsx - не поддерживает макросы.
А что если сохранять в xlsm?

Автор - DJ_Marker_MC
Дата добавления - 18.06.2014 в 18:03
nifra Дата: Среда, 18.06.2014, 18:05 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 162
Репутация: 0 ±
Замечаний: 40% ±

а у других людей, как будут данные файлы открываться? запросы какие то будут появляться?
 
Ответить
Сообщениеа у других людей, как будут данные файлы открываться? запросы какие то будут появляться?

Автор - nifra
Дата добавления - 18.06.2014 в 18:05
DJ_Marker_MC Дата: Среда, 18.06.2014, 18:09 | Сообщение № 10
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
А другие люди какую версию excel используют?

Предполагаю что вам кроме как сохранения этого файла нужно удалять еще и все макросы с него?


Сообщение отредактировал DJ_Marker_MC - Среда, 18.06.2014, 18:10
 
Ответить
СообщениеА другие люди какую версию excel используют?

Предполагаю что вам кроме как сохранения этого файла нужно удалять еще и все макросы с него?

Автор - DJ_Marker_MC
Дата добавления - 18.06.2014 в 18:09
nifra Дата: Среда, 18.06.2014, 18:14 | Сообщение № 11
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 162
Репутация: 0 ±
Замечаний: 40% ±

обычно все файлы я отправлял в формате xlsx. и проблем не возникало.

До макроса, что мне здесь предложили, файлы сохранялись в ручную в формат xlsx из xlsm и макрос фактически не работал.
 
Ответить
Сообщениеобычно все файлы я отправлял в формате xlsx. и проблем не возникало.

До макроса, что мне здесь предложили, файлы сохранялись в ручную в формат xlsx из xlsm и макрос фактически не работал.

Автор - nifra
Дата добавления - 18.06.2014 в 18:14
DJ_Marker_MC Дата: Среда, 18.06.2014, 18:28 | Сообщение № 12
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
Так будет всё ок
К сообщению приложен файл: nifra_otvet.xlsm (34.9 Kb)
 
Ответить
СообщениеТак будет всё ок

Автор - DJ_Marker_MC
Дата добавления - 18.06.2014 в 18:28
nifra Дата: Среда, 18.06.2014, 18:43 | Сообщение № 13
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 162
Репутация: 0 ±
Замечаний: 40% ±

Огромное спасибо ( + к сожалению не смог поставить второй раз)
 
Ответить
СообщениеОгромное спасибо ( + к сожалению не смог поставить второй раз)

Автор - nifra
Дата добавления - 18.06.2014 в 18:43
DJ_Marker_MC Дата: Среда, 18.06.2014, 18:44 | Сообщение № 14
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
nifra, не за что. Пользуйтесь.
 
Ответить
Сообщениеnifra, не за что. Пользуйтесь.

Автор - DJ_Marker_MC
Дата добавления - 18.06.2014 в 18:44
RAN Дата: Среда, 18.06.2014, 20:05 | Сообщение № 15
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
[vba]
Код
xlOpenXMLWorkbook = 51 =xlWorkbookDefault
[/vba]
какой смысл указывать, что файл сохраняется в формате по умолчанию?

PS Был не прав. Упустил из виду SaveCopyAs.


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 18.06.2014, 22:16
 
Ответить
Сообщение[vba]
Код
xlOpenXMLWorkbook = 51 =xlWorkbookDefault
[/vba]
какой смысл указывать, что файл сохраняется в формате по умолчанию?

PS Был не прав. Упустил из виду SaveCopyAs.

Автор - RAN
Дата добавления - 18.06.2014 в 20:05
Goodzel Дата: Пятница, 21.09.2018, 15:14 | Сообщение № 16
Группа: Пользователи
Ранг: Новичок
Сообщений: 25
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Добрый день, уважаемые знатоки!
У меня тоже одна из задач макроса - сохранить несколько листов в новой книге и назвать ее названием из ячейки А2 в листе "КП"
Я честно записала макроредактор (он еще сохраняет как значения и разгруппировывает листы в исходном файле)
Надеялась потом в vba вручную изменить название файла на ссылку к ячейке B1 из файла "пример" лист "КП", но сколько бы я ни тыркалась, у меня выдает разные ошибки, но работать отказывается.
Приложу в тексте только часть, которая отвечает за сохранение, полностью в примере. Как мне изменить код, чтобы вместо "пример_сохранить_как" была ссылка на ячейку B1 из листа "КП" (выделила цветом)?

[vba]
Код
ActiveWorkbook.SaveAs Filename:= _
        "C:\Users\Public\пример Ексель\пример_сохранить_как.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False    
[/vba]

И еще вопрос, можно ли сделать так, чтобы в самом конце изначальный файл закрылся без сохранений изменений? Макроредактором естественно не получилось такое записать :'(
Помогите, пожалуйста!
К сообщению приложен файл: 2139172.xlsm (22.8 Kb)


Сообщение отредактировал Goodzel - Пятница, 21.09.2018, 15:15
 
Ответить
СообщениеДобрый день, уважаемые знатоки!
У меня тоже одна из задач макроса - сохранить несколько листов в новой книге и назвать ее названием из ячейки А2 в листе "КП"
Я честно записала макроредактор (он еще сохраняет как значения и разгруппировывает листы в исходном файле)
Надеялась потом в vba вручную изменить название файла на ссылку к ячейке B1 из файла "пример" лист "КП", но сколько бы я ни тыркалась, у меня выдает разные ошибки, но работать отказывается.
Приложу в тексте только часть, которая отвечает за сохранение, полностью в примере. Как мне изменить код, чтобы вместо "пример_сохранить_как" была ссылка на ячейку B1 из листа "КП" (выделила цветом)?

[vba]
Код
ActiveWorkbook.SaveAs Filename:= _
        "C:\Users\Public\пример Ексель\пример_сохранить_как.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False    
[/vba]

И еще вопрос, можно ли сделать так, чтобы в самом конце изначальный файл закрылся без сохранений изменений? Макроредактором естественно не получилось такое записать :'(
Помогите, пожалуйста!

Автор - Goodzel
Дата добавления - 21.09.2018 в 15:14
Pelena Дата: Пятница, 21.09.2018, 15:22 | Сообщение № 17
Группа: Админы
Ранг: Местный житель
Сообщений: 19176
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Goodzel, прочитайте, плз, Правила форума и создайте свою тему. Эта тема закрыта


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеGoodzel, прочитайте, плз, Правила форума и создайте свою тему. Эта тема закрыта

Автор - Pelena
Дата добавления - 21.09.2018 в 15:22
Мир MS Excel » Вопросы и решения » Вопросы по VBA » сохранение файла с сегодняшней датой и названием объекта (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!