[[20200928151532]] 『 マクロで個々のデスクトップにPDFで保存したい場』(もちこ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『 マクロで個々のデスクトップにPDFで保存したい場合』(もちこ)

個々で使用できるようデスクトップの直下にエクセルをPDF化して保存したいのですが、構文エラーとなってしまって保存までがうまくいかないのです。

https://stabucky.com/wp/archives/4450 のサイトを参考にしています。

▼▼にRange("A1")に入っている会社名を保存名にいれて、
ファイル名を 納品書 エクセル会社 様 にしたいと思っています。

Sub PDF保存()

 desktop_path = CreateObject("WScript.Shell").SpecialFolders.Item("Desktop") & ""
    ActiveSheet.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=desktop_path & 納品書(" & .Range("A1").Value & "様)".pdf"

End Sub

勉強中のため、どこの部分でエラーになっているのか、わからないので教えていただけると助かります。

< 使用 Excel:Excel2010、使用 OS:Windows10 >


 こんばんは ^^
たぶん。。。シート指定、とファイル名(文字列)
かも
(隠居じーさん) 2020/09/28(月) 15:27

 Filenameを作るときの文字列が&でつながれてなかったり、"(ダブルクォーテーション)がちゃんとくくられてなかったり、withでくくってないのに.Rangeがあったりしてます。
 ついでに変数も宣言しておくとわかりやすいですよ。

 Sub PDF保存()
    Dim Desktop_Path As String
    Desktop_Path = CreateObject("WScript.Shell").SpecialFolders.Item("Desktop")
    With ActiveSheet
        .ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=Desktop_Path & "\" & "納品書(" & .Range("A1").Value & "様).pdf"
    End With
 End Sub
(ろっくん) 2020/09/28(月) 15:31

皆様

ありがとうございます(>_<)
ろっくん様の【 With ActiveSheet】を追加しましたら無事動きました。
色々エラーが出る場合があるのですね。とても勉強になりました。
また何かあれば質問させていただきますので、その際はよろしくお願いします。
(もちこ) 2020/09/28(月) 15:58


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.