Добрый день!
Нужно сохранить файл, с названием взятым из ячейки B1
(выглядеть должно как 20130419мотомир.txt)
в формате:
Текстовые файлы (с разделителями табуляции)
например, в папку:
C:\Users\Иванов\Documents\Заказы
VBA для меня пока = [записал макрос - посмотрел пошагово как работает - попытался что-то скорректировать] параллельно смотрю книжку.
Если мой вопрос совсем чайницкий - ткните носом, пожалуйста, куда посмотреть. Поиском по форуму похожего не нашёл.
Топорно но это второе что пришло в голову. Первым было SaveCopyAs но я удивился не обнаружив в этом методе возможности задания формата файла.
Option Explicit
Sub СохранитьАктивныйЛистКакТекстовыйФайл()
Dim WbFname$, TFname$, Twb As Workbook
ActiveWorkbook.Save 'Сохраняем активную книгу
WbFname = ActiveWorkbook.FullName 'Запоминаем путь к активной книге
TFname = Range("B1").Value 'Формируем имя файла
'Сохраняем книгу при этом активная книга закрываеться и открываеться сохраненная
ActiveWorkbook.SaveAs Filename:=TFname, FileFormat:=xlText, CreateBackup:=False
Set Twb = ActiveWorkbook 'Запоминаем активну книгу в переменную
Workbooks.Open WbFname 'Открываем ту книгу которая была активной
Twb.Close False 'Закрываем книгу из переменной
End Sub
Отлично работает!
Один вопрос=пожелание - как, всё-таки, сохранять файл не там где он есть, а там куда надо, просто прописав путь в макросе?
TFname = Range("B1").Value 'Формируем имя файла
я же вроде прокомментировал код
TFname = "C:\" & Range("B1").Value
Я в восторге!
Отдельное спасибо за подробности!
Если код будет в персонале либо в книге не являющейся экспортируемой то можно записать так
Option Explicit
Sub СохранитьАктивныйЛистКакТекстовыйФайл()
Dim WbFname$, TFname$, Twb As Workbook
ActiveWorkbook.Save 'Сохраняем активную книгу
WbFname = ActiveWorkbook.FullName 'Запоминаем путь к активной книге
TFname = Range("B1").Value 'Формируем имя файла
'Сохраняем книгу при этом активная книга закрываеться и открываеться сохраненная
ActiveWorkbook.SaveAs Filename:=TFname, FileFormat:=xlText, CreateBackup:=False
Set Twb = ActiveWorkbook 'Запоминаем активну книгу в переменную
ActiveWorkbook.Close False 'Закрываем книгу из переменной
Workbooks.Open WbFname 'Открываем ту книгу которая была активной
End Sub
Уважаемые форумчане,
Воспользовался данным примером но вот возникла следующая потребность:
Есть форма отчета и пытаюсь создать макрос для того, чтоб заполненная форма сохранялась с название из нескольких ячеек а не одной, допустим
TFname = Range("B9") & ("_") & Range("B10") & ("_") & Range("B11") & ".XLS"
Но он мне сохраняет файл с названием например 1_2_3, а можно ли чтоб вместо подчеркивания создавались пробелы-пустота и выглядело приблизительно так "1 2 3"?
И еще одно, каким методом можно созранять форму без макроса, т.е. чистую, чтоб не весила много?
Заранее спасибо.
Уважаемый, Crysi
вы бы создали новую тему и приложили бы свои старания "пытаюсь создать макрос"
Уважаемый boa,
Понял, сейчас все оформим.
Спасибо.