Всем здравствуйте. Прошу помочь с следующей задачей, ну или направить волшебным пенделем в нужном направлении...
Есть книга с несколькими листами. Сохранять отдельно нужно: лист Invoice (в PDF, в заранее определённую папку (R:\Invoice), с именем "Contract_Invoice_" + значение ячейки А2 листа Invoice + дата сохранения; лист Balt (в XLS/XLSX, в заранее определённую папку (R:\Balt), с именем "Balt" + значение ячейки А2 листа Balt + дата сохранения. Хочу чтобы это было 2 разных макроса, на каждой странице поставить кнопку. Меню СохранитьКак тоже должно остаться (иногда нужно в другую папку сохранять)
Пока смогла добиться только сохранения листа Invoice в формате PDF с именем Contract_Invoice....
Код
Sub SaveInvoiceAsPdf()
fileSaveName = Application.GetSaveAsFilename("Contract_Invoice", "PDF (*.pdf), *.pdf")
If fileSaveName <> False Then
Sheets("Invoice").ExportAsFixedFormat Type:=xlTypePDF, Filename:=(fileSaveName), _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End If
End Sub
Даже смогла разобраться, что данный код не сработает на сохранение в XLS...
В посте такое обсуждали, но видимо я совсем тормоз или что-то не так делаю, хочется по меньше кода (я в VBA младше младенца) Заранее благодарна.
Sub safe_Balt()
Dim iFileName As String
iFileName = Range("A2")
Sheets("Balt").Copy
ActiveWorkbook.SaveAs Filename:="R:\Balt\Balt_" & iFileName & " - " & Date & ".xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close SaveChanges:=True
End Sub
ts-79, спасибо! Сперва видимо намудрила, но сейчас всё хорошо, сохраняет ещё бы диалоговое окно прилепить, чтоб видно было, куда сохраняется, и иметь возможность поменять имя при сохранении (в случае надобности)... Умом понимаю, что это как-то можно взять с кода под PDF - но как именно, не знаю...
Юрий М,видела, спасибо я уже не сосчитаю к-во вкладок в браузере, где пробую найти как и что надо прописать, чтобы сделать так как надо в моём конкретном случае. Сложно, когда не разбираешься, а сделать надо. ts-79, и Вам спасибо осталось победить прописать диалог.окно для экселя....
ts-79,немного не то вот в этом коде на выходе имеем окно СохранитьКак, и можно прописать имя и выбрать куда... но я не понимаю, как правильно указать формат под сохранение в xls
Код
Sub SaveInvoiceAsPdf()
fileSaveName = Application.GetSaveAsFilename("Contract_Invoice", "PDF (*.pdf), *.pdf")
If fileSaveName <> False Then
Sheets("Invoice").ExportAsFixedFormat Type:=xlTypePDF, Filename:=(fileSaveName), _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End If
End Sub
Sub SaveBalt()
Filesavename = Application.GetSaveAsFilename("Balt", "Excel Files (*.xls), *.xls")
If Filesavename <> False Then
Sheets("Balt").SaveAs Filename:=(Filesavename)
End If
End Sub