• ベストアンサー

コマンドプロンプト ファイル名

デスクトップ上にある、Aという名前のフォルダの中のCSVファイル(名前が一定しない)をTEST>.xlsに変える場合は、どのように書けばいいのでしょうか? また、そのファイルを開きたいのですが・・・ コマンドプロンプトを使えばいいらしいのですが、やり方がわかりません。

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

  • ベストアンサー
noname#249717
noname#249717
回答No.1

バッチファイルを作って実行するのがいいとおもいます。 コマンドプロンプトで実行するのと同じことになります。 1) メモ帳などで   rename c:\(...デスクトップのパス...)\A\*.csv test.csv   test.csv  と入力してデスクトップなり適切なところに保存する。  「c:\」以降のデスクトップのパスが分からないときには、  この保存するファイルをAフォルダの中に入れて、  1行目を「rename *.csv test.csv」にすればOKです。 2) 保存したファイル名の拡張子を.batに変更する。 3) このバッチファイル(○○.bat)をダブルクリックする。 4) Aフォルダのcsvファイルがtest.csvに変更されて、さらに実行される。

その他の回答 (2)

  • parts
  • ベストアンサー率62% (6366/10151)
回答No.3

面白そうなので、回答します。 既に回答がありますが・・・パスまで全て自動化するなら以下のようになります。 業務用だとまだXPが運用されていることもあるので、一応XP(日本語版)でも使えるバッチとしています。 echo off @echo ホームパスのファイルを変換する。※XP_JP互換確保のため2重記述 cd /d "%HomePath%\デスクトップ\A\" cd /d "%HomePath%\desktop\A\" rename *.csv test.xls test.xls EXIT 上のEXITまでをコピーして、メモ帳に貼り付けます。 [ファイル(F)]→[名前を付けて保存(A)]で、[ファイル名(N):]の項目にConvert.batなどの名前を入れます。[ファイルの種類(T):]を必ず[全てのファイル]に指定して、好きなフォルダ上で[保存(S)]をクリックします。 で出来るとは思うが・・・これには一つ欠点があり、複数のCSVファイルがある場合は、失敗するはずです。また、これはあくまでリネームでありエクセルファイルではないので、正常に開けなくなる可能性が・・・。どちらかというと、エクセル変換するならエクセル側でマクロを組んだ方が妥当です。(そもそも、コマンドでテキストを表計算形式に変換するのは無理です。複雑な定義処理が必要ですから・・・) ちなみに、EXCELが起動することを所望されているだけで、xlsに変換しないと起動しないと思ってこの質問をされている場合は、EXCELを指定して起動すれば良いでしょう。多少手間は掛かりますし、バッチでここまで書く人は少ないでしょうけど。 これなら、CSVファイルのままでも通るはずなので、変換しなくともExcel側で開くと思いますが・・・。(もし、ただEXCELでファイルを開くことが目的で、CSV変換が不要なら、xlsの拡張子を全てcsvにして下さい) Windows7カテゴリでの質問なので、一応32bitと64bit版で総当たりします。 echo off @echo 環境変数あいまい登録MS Office版 @echo 複数のMS Officeが同居していると正常に動きません。あしからず。 set EXCEL_NA="C:\Program files\Microsoft O*\office*" set EXCEL_64="C:\Program Files (x86)\Microsoft O*\office*" set XP_HP_DA="%HomePath%\デスクトップ\A\" set V7_HP_DA="%HomePath%\Desktop\A\" cls @echo ホームパスのファイルを変換する。※XP_JP互換確保のため2重記述 cd /d %XP_HP_DA% cd /d %V7_HP_DA% rename *.csv test.xls @echo 生きている側のEXCEL絶対パスを探してポインタを強制貫通させる cd %EXCEL_NA% cd %EXCEL_64% @echo 2重実行記述だと2回Excelが起動するので、 @echo ここだけXP_pathが通っているか確認する。XPでなければVista/7とする。 if exist %XP_HP_DA%text.xls goto XP_MODE else echo EXCEL.EXE %V7_HP_DA%test.xls" EXIT :XP_MODE EXCEL.EXE %XP_HP_DA%test.xls" EXIT マイクロソフトのEXCELを必ず指定して起動する場合は、上記のようになるかな? 最初とはかなりボリュームが違います。これでもかなり短めで、バージョンの異なるオフィスが複数入っていると、正常に動作しないことがあります。 手でEXCELを開いてやった方が早いかも・・・。これにエクセルマクロを組み合わせれば、もう少し楽かもしれません。 最後に、基本的なコマンドを使う上での注意点と、覚えるべき事です。 コマンドプロンプトは、コマンド(命令)を知らないと使えません。 これは、ソフトウェアプログラムを作るのと似ています。ただ、決まったボタンをクリックしたら、 変換されたり、実行されるのではなく、自分でやって欲しい命令を書いて実行するのです。 そのため、命令をどれだけ知っているか、命令の応用がどれだけ出来るかに依存します。 これは、スクリプト全般(エクセルマクロなども含む)に言えることです。

noname#249717
noname#249717
回答No.2

回答No.1です。 先ほどの回答の修正です。   rename c:\(...デスクトップのパス...)\A\*.csv test.csv   test.csv 1行目の最後と2行目は、「test.csv」ではなく「test.xls」でした。    (正)   rename c:\(...デスクトップのパス...)\A\*.csv test.xls   test.xls

関連するQ&A