いつもありがとうございます。
組み込みダイアログボックスについて教えてください。
エクセルのシート内容をCSV形式で保存する場合、組み込みダイアログボックスを使い、下記のマクロでうまく行きました。
Sub CSV保存()
'~略~
Application.Dialogs(xlDialogSaveAs).Show ARG2:=6 '~略~
End Sub
試した結果、上記の組み込みダイローグのファイルの種類のデフォルトは ARG2:=の次の値が6でcsv、1でエクセルになるようでした。
次に、エクセルを開いた状態でCSVファイルを開こうと思い、同様に組み込みダイアローグを使用するため下記のマクロを作りました。ところがうまくいきません。
Sub CSVdata取得()
Application.Dialogs(xlDialogOpen).Show ARG2:=6
End Sub
・・・・と記述するとエラーになります。
この場合、どうも ARG2:=6の6の数字のところが4以上はエラーとなるようです。
ARG2:=の次の値を1~3にするとエラーにはなりませんが、デフォルトはいずれもエクセルでした。
最初からファイルの種類をCSV形式にするにはどう記述したらよいのでしょうか?
どうかお助けください。
No.3ベストアンサー
- 回答日時:
>Application.Dialogs(xlDialogOpen).Show arg1:="*.csv"
これではまずいのですか?
とりあえずファイルの種類は「テキストファイル」になるみたいですが。
ファイル名を空白のままにしておきたいのですかね?
この回答への補足
>とりあえずファイルの種類は「テキストファイル」になるみたいですが。
ファイル名は、*.csvと表示されるんですが、その下のファイルの種類はエクセルのまま変らないんですよ~。
もちろんそこでCSVを選ぶことは出来ますが。
そしていちどCSVを選ぶと次回もCSVになったままなんですよ。
No.4
- 回答日時:
No.2ですが、ごめんなさい。
違ったみたい。ARG2:=6 の替わりということで Show(file_text) と思ったけど違いますね。
Application.Dialogs(xlDialogOpen).Show("*.csv")
と
Application.Dialogs(xlDialogOpen).Show arg1:="*.csv"
は同じだと思いますが、これではダメなのですか?
CSVだけ表示されますが・・・
この回答への補足
> CSVだけ表示されますが・・・
あれえ!ほんとですねえ。
ダイアローグボックスの「ファイルの種類(T)」がエクセルファイルのままになっていたので気づきませんできたが、表示されてるファイルはちゃんとCSVになってましたね!
ということは実用上これで問題はありません。
ファイル種類のところは無視しちゃえばいいわけですもんね。
ありがとうございました。
No.1
- 回答日時:
組み込みのダイアログボックス
Application.Dialogs~
では、ファイルの種類を指定することはできません。
その代わり、
Application.GetOpenFilename~
を使うと、指定することができます。
ただし、その場合は、開く処理を自前で用意する必要があります。
[例]
Sub CSVdata取得()
Dim strFileName As String
strFileName = Application.GetOpenFilename(FileFilter:="CSVファイル (*.csv), *.csv")
MsgBox strFileName '確認
End Sub
この回答への補足
昨日(CSV形式での保存)に引き続き、またまたありがとうございます。
いろいろ試行錯誤を重ね、
Application.Dialogs(xlDialogOpen).Show arg1:="*.csv"
で、ファイル名のところに「*.csv」を表示させるところまでは行ったのですが、ファイルの種類はやはり無理ですか。無理ならApplication.GetOpenFilenameでやるしかないですね。開く処理を自前で用意できるかやってみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Access(アクセス) CSVファイルの「0落ち」にVBA 6 2023/02/02 15:27
- Visual Basic(VBA) エクセルVBAについて 8 2022/07/13 22:41
- Excel(エクセル) CSVファイルでVBAを動かす方法 3 2023/04/04 10:22
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
100万行のCSVを10万行ずつのフ...
-
Access2007のエキスポートについて
-
カンマがデータとして入ってるC...
-
TXTで作成したファイルをDATフ...
-
ファイル名が同じ場合自動的に...
-
【CSVファイル】先頭の文字列に...
-
accessで項目内の文字を自動改...
-
タブ区切りデータからダブルコ...
-
エクセルデータをテキストファ...
-
CSVデータをピボットテーブルで...
-
任意のCSVファイルをAccessに取...
-
MS-Accessの保存方法
-
Access インポート
-
エクセルVBAの「組み込みダイア...
-
Accessで小数点以下を切り捨て...
-
テキストデータをACCESS...
-
csvファイルをAccessに取り込む...
-
xls.形式だと0があり、csv.形式...
-
ファイルメーカープロのデータ...
-
Androidスマホ上のSpreadSheet
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【CSVファイル】先頭の文字列に...
-
100万行のCSVを10万行ずつのフ...
-
アクセスでcsvに出力した際、頭...
-
Access インポート
-
タブ区切りデータからダブルコ...
-
ThunderbirdのメールをCSVでま...
-
TXTで作成したファイルをDATフ...
-
Access2007のエキスポートについて
-
accessで項目内の文字を自動改...
-
csvファイルが保存すると数...
-
アクセスがインポートできる容...
-
カンマがデータとして入ってるC...
-
sqlldrのフィールドの属性について
-
Accessでdatファイルのインポート
-
TSVのファイルをACCESSにインポ...
-
Access95のエクスポートで教え...
-
エクセルデータをテキストファ...
-
CVS形式とは?
-
複数のテキストファイルをエク...
-
VBAでMSアクセスに、Tab区切り...
おすすめ情報