Название файла+дата
Volodya
Дата: Среда, 05.07.2017, 11:35 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Всем привет. Нужен макрос, который будет сохранять файл с следующим названием: B(СЕГОДНЯШНЯЯ ДАТА В ФОРМАТЕ DDMMYY, БЕЗ ВСЯКИХ РАЗДЕЛИТЕЛЕЙ)W То есть, название сохраненного файла должно быть примерно таким: B050717W.xls Использовал такой код, взятый на этом же форуме: [vba]Код
Dim strA As String 'Текущий адрес книги на ПК Dim strB As String 'Имя книги без формата Dim strC As String 'Формирование даты + формата strA = ThisWorkbook.Path & "\" strB = Left(ThisWorkbook.Name, InStr(1, ThisWorkbook.Name, ".xls") - 1) strC = "_" & Replace(Str(Date), ".", "") & ".xlsb" 'Сшиваем заготовку из частей ThisWorkbook.SaveAs Filename:=strA & strB & strC
[/vba] Проблема лишь в том, что макрос у меня находится в одном файле, а информацию, которую нужно сохранить с заданным именем - в другом. Данный макрос работает, но сохраняется файл, в котором записан макрос. Пробовал заменить [vba][/vba],[vba][/vba] на имя файла и путь к файлу соответственно, но не помогло.
Всем привет. Нужен макрос, который будет сохранять файл с следующим названием: B(СЕГОДНЯШНЯЯ ДАТА В ФОРМАТЕ DDMMYY, БЕЗ ВСЯКИХ РАЗДЕЛИТЕЛЕЙ)W То есть, название сохраненного файла должно быть примерно таким: B050717W.xls Использовал такой код, взятый на этом же форуме: [vba]Код
Dim strA As String 'Текущий адрес книги на ПК Dim strB As String 'Имя книги без формата Dim strC As String 'Формирование даты + формата strA = ThisWorkbook.Path & "\" strB = Left(ThisWorkbook.Name, InStr(1, ThisWorkbook.Name, ".xls") - 1) strC = "_" & Replace(Str(Date), ".", "") & ".xlsb" 'Сшиваем заготовку из частей ThisWorkbook.SaveAs Filename:=strA & strB & strC
[/vba] Проблема лишь в том, что макрос у меня находится в одном файле, а информацию, которую нужно сохранить с заданным именем - в другом. Данный макрос работает, но сохраняется файл, в котором записан макрос. Пробовал заменить [vba][/vba],[vba][/vba] на имя файла и путь к файлу соответственно, но не помогло. Volodya
Ответить
Сообщение Всем привет. Нужен макрос, который будет сохранять файл с следующим названием: B(СЕГОДНЯШНЯЯ ДАТА В ФОРМАТЕ DDMMYY, БЕЗ ВСЯКИХ РАЗДЕЛИТЕЛЕЙ)W То есть, название сохраненного файла должно быть примерно таким: B050717W.xls Использовал такой код, взятый на этом же форуме: [vba]Код
Dim strA As String 'Текущий адрес книги на ПК Dim strB As String 'Имя книги без формата Dim strC As String 'Формирование даты + формата strA = ThisWorkbook.Path & "\" strB = Left(ThisWorkbook.Name, InStr(1, ThisWorkbook.Name, ".xls") - 1) strC = "_" & Replace(Str(Date), ".", "") & ".xlsb" 'Сшиваем заготовку из частей ThisWorkbook.SaveAs Filename:=strA & strB & strC
[/vba] Проблема лишь в том, что макрос у меня находится в одном файле, а информацию, которую нужно сохранить с заданным именем - в другом. Данный макрос работает, но сохраняется файл, в котором записан макрос. Пробовал заменить [vba][/vba],[vba][/vba] на имя файла и путь к файлу соответственно, но не помогло. Автор - Volodya Дата добавления - 05.07.2017 в 11:35
_Boroda_
Дата: Среда, 05.07.2017, 11:38 |
Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация:
6479
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Замените ThisWorkbook на Workbooks("Другая_книга") Пример [vba]Код
strA = Workbooks("Другая книга.xlsb").Path & "\"
[/vba]
Замените ThisWorkbook на Workbooks("Другая_книга") Пример [vba]Код
strA = Workbooks("Другая книга.xlsb").Path & "\"
[/vba] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Замените ThisWorkbook на Workbooks("Другая_книга") Пример [vba]Код
strA = Workbooks("Другая книга.xlsb").Path & "\"
[/vba] Автор - _Boroda_ Дата добавления - 05.07.2017 в 11:38
Manyasha
Дата: Среда, 05.07.2017, 11:45 |
Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
898
±
Замечаний:
0% ±
Excel 2010, 2016
Или переписать для активной книги: [vba]Код
Sub t() Dim strA As String 'Текущий адрес книги на ПК Dim strB As String 'Имя книги без формата Dim strC As String 'Формирование даты + формата With ActiveWorkbook strA = .Path & "\" strB = Left(.Name, InStr(1, .Name, ".xls") - 1) strC = "_" & Replace(Str(Date), ".", "") & ".xlsb" 'Сшиваем заготовку из частей .SaveAs Filename:=strA & strB & strC, FileFormat:=xlExcel12 End With End Sub
[/vba]
Или переписать для активной книги: [vba]Код
Sub t() Dim strA As String 'Текущий адрес книги на ПК Dim strB As String 'Имя книги без формата Dim strC As String 'Формирование даты + формата With ActiveWorkbook strA = .Path & "\" strB = Left(.Name, InStr(1, .Name, ".xls") - 1) strC = "_" & Replace(Str(Date), ".", "") & ".xlsb" 'Сшиваем заготовку из частей .SaveAs Filename:=strA & strB & strC, FileFormat:=xlExcel12 End With End Sub
[/vba] Manyasha
ЯД: 410013299366744 WM: R193491431804
Ответить
Сообщение Или переписать для активной книги: [vba]Код
Sub t() Dim strA As String 'Текущий адрес книги на ПК Dim strB As String 'Имя книги без формата Dim strC As String 'Формирование даты + формата With ActiveWorkbook strA = .Path & "\" strB = Left(.Name, InStr(1, .Name, ".xls") - 1) strC = "_" & Replace(Str(Date), ".", "") & ".xlsb" 'Сшиваем заготовку из частей .SaveAs Filename:=strA & strB & strC, FileFormat:=xlExcel12 End With End Sub
[/vba] Автор - Manyasha Дата добавления - 05.07.2017 в 11:45
AndreTM
Дата: Среда, 05.07.2017, 11:49 |
Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация:
500
±
Замечаний:
0% ±
2003 & 2010
И лучше все же дату задавать в формате YYMMDD
И лучше все же дату задавать в формате YYMMDD AndreTM
Skype: andre.tm.007 Donate: Q iwi: 9517375010
Ответить
Сообщение И лучше все же дату задавать в формате YYMMDD Автор - AndreTM Дата добавления - 05.07.2017 в 11:49
Volodya
Дата: Среда, 05.07.2017, 11:59 |
Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Manyasha, сделал по вашему примеру. Теперь выдает ошибку в строке: [vba]Код
.SaveAs Filename:=strA & strB & strC, FileFormat:=xlExcel12
[/vba]
Manyasha, сделал по вашему примеру. Теперь выдает ошибку в строке: [vba]Код
.SaveAs Filename:=strA & strB & strC, FileFormat:=xlExcel12
[/vba] Volodya
Ответить
Сообщение Manyasha, сделал по вашему примеру. Теперь выдает ошибку в строке: [vba]Код
.SaveAs Filename:=strA & strB & strC, FileFormat:=xlExcel12
[/vba] Автор - Volodya Дата добавления - 05.07.2017 в 11:59
Volodya
Дата: Среда, 05.07.2017, 12:00 |
Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
AndreTM, к сожалению поставщик требует дату в именно таком формате, который я описал выше
AndreTM, к сожалению поставщик требует дату в именно таком формате, который я описал выше Volodya
Ответить
Сообщение AndreTM, к сожалению поставщик требует дату в именно таком формате, который я описал выше Автор - Volodya Дата добавления - 05.07.2017 в 12:00
Manyasha
Дата: Среда, 05.07.2017, 12:03 |
Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
898
±
Замечаний:
0% ±
Excel 2010, 2016
Volodya , а если убрать FileFormat:=xlExcel12? На файле с каким расширением Вы запускаете макрос?
Volodya , а если убрать FileFormat:=xlExcel12? На файле с каким расширением Вы запускаете макрос?Manyasha
ЯД: 410013299366744 WM: R193491431804
Ответить
Сообщение Volodya , а если убрать FileFormat:=xlExcel12? На файле с каким расширением Вы запускаете макрос?Автор - Manyasha Дата добавления - 05.07.2017 в 12:03
Volodya
Дата: Среда, 05.07.2017, 12:08 |
Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Manyasha, убрал, все получилось, кроме того, что имя сохраняемого файла должно быть "ВДАТАW", а у меня имяфайлакоторыйсохраняю_дата. Расширение файла .xls
Manyasha, убрал, все получилось, кроме того, что имя сохраняемого файла должно быть "ВДАТАW", а у меня имяфайлакоторыйсохраняю_дата. Расширение файла .xls Volodya
Сообщение отредактировал Volodya - Среда, 05.07.2017, 12:10
Ответить
Сообщение Manyasha, убрал, все получилось, кроме того, что имя сохраняемого файла должно быть "ВДАТАW", а у меня имяфайлакоторыйсохраняю_дата. Расширение файла .xls Автор - Volodya Дата добавления - 05.07.2017 в 12:08
_Boroda_
Дата: Среда, 05.07.2017, 12:14 |
Сообщение № 9
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация:
6479
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Filename:=strA & strB & strC
А так у Вас и раньше не должно было получаться. В этой конструкции strB лишнее Нужно так [vba][/vba]
Filename:=strA & strB & strC
А так у Вас и раньше не должно было получаться. В этой конструкции strB лишнее Нужно так [vba][/vba]_Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Filename:=strA & strB & strC
А так у Вас и раньше не должно было получаться. В этой конструкции strB лишнее Нужно так [vba][/vba]Автор - _Boroda_ Дата добавления - 05.07.2017 в 12:14
Volodya
Дата: Среда, 05.07.2017, 12:18 |
Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
_Boroda_, в этой строке пытался приписать в конец названия W . Если подскажите как это сделать, буду благодарен.
_Boroda_, в этой строке пытался приписать в конец названия W . Если подскажите как это сделать, буду благодарен. Volodya
Ответить
Сообщение _Boroda_, в этой строке пытался приписать в конец названия W . Если подскажите как это сделать, буду благодарен. Автор - Volodya Дата добавления - 05.07.2017 в 12:18
_Boroda_
Дата: Среда, 05.07.2017, 12:24 |
Сообщение № 11
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация:
6479
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Выше, там, где назначаем strC, перепишите вот так [vba]Код
strC = "B" & Replace(Str(Date), ".", "") & "W.xlsb"
[/vba]
Выше, там, где назначаем strC, перепишите вот так [vba]Код
strC = "B" & Replace(Str(Date), ".", "") & "W.xlsb"
[/vba] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Выше, там, где назначаем strC, перепишите вот так [vba]Код
strC = "B" & Replace(Str(Date), ".", "") & "W.xlsb"
[/vba] Автор - _Boroda_ Дата добавления - 05.07.2017 в 12:24
Volodya
Дата: Среда, 05.07.2017, 12:31 |
Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
_Boroda_, не помогло. Теперь он W использует в виде разделителя. Получается B05W07W2017
_Boroda_, не помогло. Теперь он W использует в виде разделителя. Получается B05W07W2017 Volodya
Ответить
Сообщение _Boroda_, не помогло. Теперь он W использует в виде разделителя. Получается B05W07W2017 Автор - Volodya Дата добавления - 05.07.2017 в 12:31
Volodya
Дата: Среда, 05.07.2017, 12:37 |
Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
_Boroda_, все, получись. Огромное спасибо
_Boroda_, все, получись. Огромное спасибо Volodya
Ответить
Сообщение _Boroda_, все, получись. Огромное спасибо Автор - Volodya Дата добавления - 05.07.2017 в 12:37
Volodya
Дата: Среда, 05.07.2017, 13:05 |
Сообщение № 14
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
_Boroda_, подскажите еще, пожалуйста. В названии файла выводится дата в формате DDMMYYYY, а нужна в формате DDMMYY. Попробовал так: [vba]Код
strC = "_" & Replace(Str(Format(Date, "DDMMYY")), ".", "") & ".xls
[/vba] Теперь он показывает название файла как B 50717W Не понятно откуда появляется пробел
_Boroda_, подскажите еще, пожалуйста. В названии файла выводится дата в формате DDMMYYYY, а нужна в формате DDMMYY. Попробовал так: [vba]Код
strC = "_" & Replace(Str(Format(Date, "DDMMYY")), ".", "") & ".xls
[/vba] Теперь он показывает название файла как B 50717W Не понятно откуда появляется пробел Volodya
Ответить
Сообщение _Boroda_, подскажите еще, пожалуйста. В названии файла выводится дата в формате DDMMYYYY, а нужна в формате DDMMYY. Попробовал так: [vba]Код
strC = "_" & Replace(Str(Format(Date, "DDMMYY")), ".", "") & ".xls
[/vba] Теперь он показывает название файла как B 50717W Не понятно откуда появляется пробел Автор - Volodya Дата добавления - 05.07.2017 в 13:05
_Boroda_
Дата: Среда, 05.07.2017, 13:12 |
Сообщение № 15
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация:
6479
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
уберите Str, Вам достаточно Формата [vba]Код
strC = "_" & Replace(Format(Date, "DDMMYY"), ".", "") & ".xls"
[/vba]
уберите Str, Вам достаточно Формата [vba]Код
strC = "_" & Replace(Format(Date, "DDMMYY"), ".", "") & ".xls"
[/vba] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение уберите Str, Вам достаточно Формата [vba]Код
strC = "_" & Replace(Format(Date, "DDMMYY"), ".", "") & ".xls"
[/vba] Автор - _Boroda_ Дата добавления - 05.07.2017 в 13:12
Volodya
Дата: Среда, 05.07.2017, 13:19 |
Сообщение № 16
Группа: Пользователи
Ранг: Новичок
Сообщений: 38
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
_Boroda_, Сделал вот так. Тоже получилось [vba]Код
strB =Format(Date, "DDMMYY") strC = "_" & Replace((StrB), ".", "") & ".xls"
[/vba]
_Boroda_, Сделал вот так. Тоже получилось [vba]Код
strB =Format(Date, "DDMMYY") strC = "_" & Replace((StrB), ".", "") & ".xls"
[/vba] Volodya
Ответить
Сообщение _Boroda_, Сделал вот так. Тоже получилось [vba]Код
strB =Format(Date, "DDMMYY") strC = "_" & Replace((StrB), ".", "") & ".xls"
[/vba] Автор - Volodya Дата добавления - 05.07.2017 в 13:19