Excelファイルとcsvを動的に生成するプログラムがあります。 Excelファイルには、読み込み時にcsvデータをロードするVBAコードがあり、csvファイルに同じファイル名を使用して、その拡張子を動的に呼び出す必要があります。Excelでは、VBAを使用して、「パス+ファイル名+拡張子」を取得し、拡張子を変更するにはどうすればよいですか?
C:\directory\filename.xls
このVBAコード::それは(source of code)が正しいかどう
Function GetFullName() As String
GetFullName = ThisWorkbook.FullName
End Function
は、
のでGetFullName() = "C:\directory\filename.xls"
につながるXLSファイルはここにあったのであれば、私の理解これに基づいてどのように ".xls"を ".csv"に置き換えて、その値をファイル呼び出しに挿入しますか。または、たとえば、このコードを使用してPDFを印刷するVBAがファイルをシンプルに保つようにします。これGetFullNameを使用するように私を必要とする、と「.PDF」に変更し、「.XLS」:
Sub PrintPDF()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\directory\filename.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False _
End Sub
は、よりよい解決策の概念がありますならば、私はそれに開いている、問題がクリアされている願っています。質問がある場合は、私に知らせてください。
+1をそれは働くでしょうか?また、GetPullNameCSV()をPrintPDF()の例のFilename属性に挿入する方法はありますか?ありがとう! – blunders
私はテストしませんでしたが、私はReplaceに非常に精通しています。私はこれを使う方法を描いた。 – Fionnuala
+1ちょっと調べてみたら、今すぐテストするためのExcelをインストールしていない - あなたのコードを理解していない可能性があります。私の質問の。 << Filename:= "GetFullNameCSV()" >>を "Filename:=" C:\ directory \ filename.pdf ">>と読み替えるにはどうすればいいですか? Filenameへの参照は私の質問の "Sub PrintPDF()"の例から取られています。意味私はちょうど特別な書式設定なしでファイル名の場所として "GetFullNameCSV()"をプラグインすることはできないと推測しています。そうですか?再びありがとう!! – blunders