Запази като
Този макрос на Word ще запише ActiveDocument с ново име на файл, което включва текущото време:
Sub SaveMewithDateName () 'запазва активния документ в текущата папка като филтриран html и наименуван по текущото време Dim strTime As String strTime = Format (Now, "hh-mm") ActiveDocument.SaveAs FileName: = ActiveDocument.Path & "\" & strTime, FileFormat: = wdFormatFilteredHTML End Sub
Създаване и запазване като
Този макрос VBA ще създаде нов документ и ще запише като използва текущата дата и час:
Sub CreateAndSaveAs () 'създава нов документ и записва като филтриран html [В папката по подразбиране и наименуван в текущото време] Dim strTime As String Dim strPath As String Dim oDoc As Document strPath = ActiveDocument.Path & Application.PathSeparator strTime = Format (Сега "yyyy-mm-dd hh-mm") Задайте oDoc = Documents.Add "създайте нов документ и го присвойте на oDoc променлива" напишете някакъв текст в новия документ, отнасящ се до него, като използвате променливата oDoc oDoc.Range.InsertBefore „Посетете https://easyexcel.net/vba-code-library“ oDoc.SaveAs FileName: = strPath & strTime, FileFormat: = wdFormatFilteredHTML oDoc.Close wdDoNotSaveChanges 'close doc End Sub
Запазване като PDF
Този макрос ще запише документа на Word като PDF:
Sub MacroSaveAsPDF () 'макрос запазва pdf или в същата папка, където е активният документ, или в папка с документи, ако файлът все още не е запазен' Dim strPath As String Dim strPDFname As String strPDFname = InputBox ("Въведете име за PDF", "Име на файла "," пример ") Ако strPDFname =" "Тогава" потребителят изтри текста от полето за въвеждане, добавете име по подразбиране strPDFname = "пример" Край Ако strPath = ActiveDocument.Path Ако strPath = "" Тогава 'doc все още не е записан strPath = Опции. DefaultFilePath (wdDocumentsPath) & Application.PathSeparator Иначе 'просто добавете \ в края strPath = strPath & Application.PathSeparator End If ActiveDocument.ExportAsFixedFormat OutputFileName: = _ strPath & strPDFname & ".pdfExport: _ Export: = False, _ OptimizeFor: = wdExportOptimizeForPrint, _ Range: = wdExportAllDocument, _ IncludeDocProps: = True, _ CreateBookmarks: = wdExportCreateWordBookmarks, _ BitmapMissingFonts: = True End Sub
Тази функция също ще запише всеки документ на Word като PDF:
Sub MacroSaveAsPDFwParameters (Незадължително strPath As String, Незадължително strFilename As String) 'strPath, ако е предаден, трябва да включва разделител на пътя ["\"] Ако strFilename = "" Тогава strFilename = ActiveDocument.Name End If' извлечете само име на файл без разширение If InStr (1, strFilename, ".")> 0 Тогава strFilename = Наляво $ (strFilename, InStrRev (strFilename, ".") - 1) Край Ако If strPath = "" Тогава Ако ActiveDocument.Path = "" Тогава 'doc не е още запазени, ще използваме пътя по подразбиране strPath = Options.DefaultFilePath (wdDocumentsPath) & Application.PathSeparator Друг 'път на използване на активен документ strPath = Options.DefaultFilePath (wdDocumentsPath) & Application.PathSeparator End If End If On Грешка GoTo EXITEREx OutputFileName: = _ strPath & strFilename & ".pdf", _ ExportFormat: = wdExportFormatPDF, _ OpenAfterExport: = False, _ OptimizeFor: = wdExportOptimizeForPrint, _ Range: = wdExportAllDocDocDocment _ BitmapMissingFon ts: = True Exit Sub EXITHERE: MsgBox "Грешка:" & Err.Number & "" & Err.
Можете да въведете пътя и името на файла, за да посочите кой файл да запишете като PDF:
Sub CallSaveAsPDF () Call MacroSaveAsPDFwParameters ("c:/Documents", "example.docx") End Sub