私はVBAコーディングの初心者ですが、rtfファイルがあるフォルダを選択できるようにExcelでマクロを作成する方法を知りたいと思いますそれらをすべて同じフォルダ内のpdfに変換します。Excel VBAコードを使用して、フォルダ内のrtfファイルをpdfファイルに一括変換する
何か助けていただければ幸いです。
種類は、これを実行する最も簡単な方法は、.rtf
を開き、PDFに変換するWordを使用することです
私はVBAコーディングの初心者ですが、rtfファイルがあるフォルダを選択できるようにExcelでマクロを作成する方法を知りたいと思いますそれらをすべて同じフォルダ内のpdfに変換します。Excel VBAコードを使用して、フォルダ内のrtfファイルをpdfファイルに一括変換する
何か助けていただければ幸いです。
種類は、これを実行する最も簡単な方法は、.rtf
を開き、PDFに変換するWordを使用することです
について。 Excelはドキュメントではなくスプレッドシートを表示するように設計されていますが、Wordオブジェクトライブラリを参照することでExcelからこれを自動化できます。
組み込みのFileDialogを使用して、フォルダの選択とマクロのエントリポイントの入力を求めます。
'Add a Reference Microsoft Word Object Library
Sub ConvertRtfToPDF()
With Application.FileDialog(msoFileDialogFolderPicker)
.AllowMultiSelect = False
If .Show() Then
ConvertFiles GetFiles(.SelectedItems(1), ".rtf")
End If
End With
End Sub
これは、変換を行う機能である、それはファイルの配列を受け取り、PDFにそれらのすべてを変換します
Sub ConvertFiles(files() As String)
Dim wd As New Word.Application
Dim doc As Word.Document
Dim file As Variant
For Each file In files
Set doc = wd.Documents.Open(file, ReadOnly:=True)
doc.ExportAsFixedFormat Replace(file, ".rtf", ".pdf"), 17
doc.Close
Next file
wd.Quit
End Sub
この機能は、フォルダ名を指定して、ファイル名の配列を返します。
Function GetFiles(folder As String, extension As String) As String()
Dim files() As String
ReDim files(0)
file = Dir(folder & "\")
While (file <> "")
If Right(file, Len(extension)) = extension Then
files(UBound(files)) = folder & "\" & file
ReDim Preserve files(UBound(files) + 1)
End If
file = Dir
Wend
ReDim Preserve files(UBound(files) - 1)
GetFiles = files
End Function
モジュールにすべてのことを貼り付けConvertRtfToPDF機能を実行し、フォルダを選択するように求められますし、それがにそのフォルダ内のすべての.rtf
を変換します。
あなたの質問はかなりよく言われていますが、研究努力はありません。私はこの例であなたを助けたが、スタックは問題の出発点ではないはずです、Googleはすべきです。 –