こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Access名前に本日の日付のあるCSVを開きたい

Accessのクエリ結果をテキストエクスポートでCSV形式で保存しています。その際に、CSVの名前をCSV+format(date,"yyyymmdd")にしています。
エクスポート後に、この本日が変数となっているCSVファイルをアプリケーションの実行で開きたいのですが、コマンドラインの書き方が分かりません。
現在は、"C:\Windows\System32\notepad.exe" "C:\BBB\GGG\CSV%date:~0,4%%date:~5,2%%date:~8,2%.csv"
としていますが、書き方が間違えているというエラーになります。
VBAまたはマクロでどのようにすればこれができるか教えてください。
よろしくお願いします。

投稿日時 - 2017-01-26 22:52:09

QNo.9286318

困ってます

質問者が選んだベストアンサー

マクロの「アプリケーションの実行」の「コマンドライン」引数の設定についての質問ですね。

下記のように設定してみてください。

="C:\Windows\System32\notepad.exe C:\BBB\GGG\CSV" & Format(Date(),"mmdd") & ".csv"

バスやファイル名に半角空白が含まれている場合は、下記のように、アプリのバスとファイルのパスを "" で囲んでください。

="""C:\Windows\System32\notepad.exe"" ""C:\BBB\GGG\CSV" & Format(Date(),"mmdd") & ".csv"""

先頭の = を忘れないように。

投稿日時 - 2017-01-27 18:03:24

お礼

ありがとうございます。
ブランク入りの下段の方法で解決できました。

投稿日時 - 2017-01-30 09:57:37

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

前回の回答の訂正

Format(Date()."mmdd")

の部分は、下記に変更してください。

Format(Date(),"yyyymmdd")

投稿日時 - 2017-01-27 18:06:21

お礼

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

投稿日時 - 2017-01-30 09:57:13

ANo.1

色々疑問があり、何を言いたいのか分からない文章なので回答しようがないと思いますよ。

「CSVの名前」って何のことでしょう?
ファイル名とは違うのでしょうか?

「CSV+format(date,"yyyymmdd")にしています」の意味が分かりません。

コマンドラインってどこのですか?
もしかしてDOS窓のコマンドプロンプトのことでしょうか?
もしそうなら、書いてある文法には途中に余分なダブルクォーテーションがあるのでエラーになると思います。
「C:\BBB\GGG\CSV%date:~0,4%%date:~5,2%%date:~8,2%.csv」は何をしたいのでしょう?

もっと分りやすい日本語にされた方が伝わりやすいと思いますよ。

投稿日時 - 2017-01-27 11:36:03

お礼

ご指摘すみません。
CSV+format(date,"yyyymmdd")の部分は、AccessのクエリをテキストインポートするときにつけるCSVファイルのファイル名の名前の付け方です。本日ならば、出来上がるファイル名は、CSV20170127.csvとなります。やりたいことは、マクロでこのエクスポートを行ってから、出力したCSVファイルをメモ帳で開きたいことです。日付の部分が変数となります。マクロの出力であれば、出力後のフィルを起動するオプションがあるのですが、テキストエクスポートにはそのオプションが無いので、マクロのアプリケーションの実行でCSVファイルを開けないものかと思っています。アプリケーションの実行で指定するコマンドラインに変数を使用しないでC:\BBB\GGG\CSV20170127.csvとすれば、目的のファイルは開けるのですが、この日にちの部分をマクロを実行した日にしたいので変数で指定したいと思っています。よろしくお願いします。

投稿日時 - 2017-01-27 12:22:30

あなたにオススメの質問