アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルでマクロを使用し指定のフォルダに拡張子をPDFで
ファイル名を(注文書と今日の日付)にしたいのですが分かる方教えていただけないでしょうか。
よろしくお願いいたします。

質問者からの補足コメント

  • ファイル名は注文書220318のようにしたいです。

      補足日時:2022/03/18 20:04
  • kamejiroさんのご回答を参考にマクロの自動記録から得られるソースコードに加筆してみましたが上手くいきませんでした。

    Sub 保存()
    '
    ' 保存 Macro
    '
    '
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    保存先&"注文書" & Format(Date, "yymmdd") & ".pdf", _
    Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
    :=False, OpenAfterPublish:=False
    End Sub

    何がおかしいでしょうか。

      補足日時:2022/03/21 10:20
  • kamejiroさんのご回答何度もありがとうございます。
    無知で申し訳ございません。
    下記に加筆する場合はどうなりますでしょうか。
    Sub 保存()
    '
    ' 保存 Macro
    '

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    "C:\Users\user\Desktop\テスト\注文書.pdf", Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
    False

    End Sub

      補足日時:2022/03/21 11:38

A 回答 (6件)

スマホからので、長く打てません。


二行目、…テスト¥注文書.pdf…
…テスト¥注文書” & Format(Date,”yymmdd”) & “.pdf…
に変える。
    • good
    • 0
この回答へのお礼

ありがとうございました。
おかげでうまく出来ました。

お礼日時:2022/03/21 12:20

保存先の変数の値を指定していません。


例えば、
保存先=”d:¥”
のような指定がひつようです。
自身の例は、エクセルの保存されている保存先を予め関数で指定しています。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2022/03/21 12:20

No.2です。


まだ締め切ってなかったので、No.1とNo.3で回答いただいている t_fumiakiさんの本日の日付を取得する手続きを参考にマクロの自動記録から得られるソースコードを加筆し、作成させていただきました。(動きました)

一、指定の保存先の具体的な提示が分かりませんでしたので、エクセルが保存されているフォルダと同じところを指定しました。

二、保存対象のシートはSheet1にしました。

Sub Macro()
保存ドライブ先 = ThisWorkbook.Path
保存ファイル名 = "注文書" & Format(Date, "yymmdd") & ".pdf"
保存ファイル名 = 保存ドライブ先 & "\" & 保存ファイル名

Sheets("Sheet1").Select
Sheets("Sheet1").Copy
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
保存ファイル名, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False

Application.DisplayAlerts = False
ActiveWindow.Close
Application.DisplayAlerts = True

End Sub
    • good
    • 0

本日の日付は、Format(Date, "yymmdd")


連結で、注文書 & Format(Date, "yymmdd")

ActiveWorkbook.SaveAs Filename:="C:・・・・\注文書" & Format(Date, "yymmdd") & ".PDF"
    • good
    • 0

経験と感覚からのコメントです。


すぐにソースコードは書けないので、マクロの自動記録を使う。

1.マクロの記録開始
2.保存するシートを新規エクセルファイルとしてコピーする。
3.適当に名前を付けて保存する。保存形式はPDF形式
4.新規エクセルファイルは、保存せずに終了
5.マクロの記録終了

この手順を使えば、PDF形式でシートを保存するマクロが作れるかと思います。ソースに名前が出てきます。
名前を「date$」から「:」だけを取るようにMid関数、Left関数、Right関数を使って文字列を取得する。この文字列と「注文書」の文字列を「&」でつなげる。他の回答者さんから良い回答があればそのソースを参考にしたらいいかと思います。
自身も少し時間があったら、マクロの自動記録のソースを加工して作ってみます。(すぐにはできません)
    • good
    • 0

ActiveWorkbook.SaveAs Filename:="C:・・・・\ファイル名.PDF"



C:・・・・の部分はフルパス

(注文書と今日の日付)とは?一体どういう名前にしたい???
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A