
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
簡単に分かりやすくマクロの登録から実行までを下記に
記載したつもりですが、伝わらなかったら申し訳ありま
せん。それでは
Excelを立ち上げ、ツール→マクロ→VisualBasicEditorを
クリックします。次に立ち上がったVisualBasicEditorの
挿入→標準モジュールを押すと、Module1(コード)が開く
のでそこに下記のソースをコピペしてください。
Sub Macro1()
Application.DisplayAlerts = False
main_f = ActiveWindow.Caption
out_pass = ActiveWorkbook.Path & "\"
Out_name = ActiveSheet.Name
Sheets(Out_name).Select
Sheets(Out_name).Copy
ActiveWorkbook.SaveAs Filename:= _
out_pass & Out_name & ".csv", _
FileFormat:=xlCSV, CreateBackup:=False
ActiveWindow.Close
Application.DisplayAlerts = True
End Sub
コピペがおわりましたら、エクセルにもどり任意の
ファイル名で保存してください。例として
sheetout_csv.xlsとして保存します。保存先は
どこでもかまいませんが、閉じずにそのままにして
おいてください。
次に、061156さんがシート別にcsv出力したいファイルを
Excelで開き、出力したいシートをクリックします。
次にツール→マクロ→マクロを押して表示されている
sheetout_csv.xls!Macro1を「実行」ボタンを押して実行
します。これで任意のシートのCSVファイル出力は
完成です。出力先はシート別にcsv出力したいファイルと
同じ場所に「選択したシート名.csv」で出力されます。
ボタン押すと出力されるようにもできますが記載が複雑に
なりそうなのでこれで^^;
以上です。
No.4
- 回答日時:
#3 です。
すみません。Worksheet オブジェクトに SaveAs メソッドがあるのを
すっかり忘れてました。#3 はもっと簡単に書けます。
' // アクティブシートを CSV で保存2(標準モジュール)
Sub CsvOutputSample2()
' // Excel の CSV 出力機能を利用します
Dim vOutFile As Variant
' // 保存ファイル名を問い合せて、バリアント型変数で受ける
vOutFile = Application.GetSaveAsFilename( _
FileFilter:="CSV 形式(*.csv),*.csv", _
InitialFileName:=ActiveSheet.Name)
' // 変数の値がブール値(False) ならユーザーキャンセルなので終了
If VarType(vOutFile) = vbBoolean Then Exit Sub
' // 保存実行
ActiveSheet.SaveAs Filename:=vOutFile, FileFormat:=xlCSV
End Sub
No.3
- 回答日時:
こんにちは。
全部わかりませんでは作成依頼と受け取られかねませんよ。
VBA を学びたいのですよね? 頑張ってください。
ご参考までに。
' // アクティブシートを CSV で保存(標準モジュール)
Sub CsvOutputSample()
' // Excel の CSV 出力機能を利用します
Dim vOutFile As Variant
Dim shSrc As Worksheet
' // A) 保存ファイル名を問い合せて、バリアント型変数で受ける
vOutFile = Application.GetSaveAsFilename( _
FileFilter:="CSV 形式(*.csv),*.csv", _
InitialFileName:=ActiveSheet.Name)
' // 変数の値がブール値(False) ならユーザーキャンセルなので終了
If VarType(vOutFile) = vbBoolean Then Exit Sub
' // 現在アクティブなシートを覚えておく(後で確実にアクティブ化するため)
Set shSrc = ActiveSheet
' // 画面の切り替わりをユーザーに見せない
Application.ScreenUpdating = False
' // B) アクティブシートを「新しいブック」に複製する
shSrc.Copy
' // B) により、複製先の「新しいブック」がアクティブに切り替わる
With ActiveWorkbook
' // A) の名前で CSV 形式で保存し、閉じる
.SaveAs Filename:=vOutFile, FileFormat:=xlCSV
.Close SaveChanges:=False
End With
' // 一応念のため、コピー元シートの親オブジェクト(ブック)からアクティブ化
shSrc.Parent.Activate
' // シートアクティブ化
shSrc.Activate
' // オブジェクト変数を空に(参照を破棄)する
Set shSrc = Nothing
End Sub
No.2
- 回答日時:
CSVでの保存自体は「名前をつけて保存」で「ファイルの種類」をCSVにすればOK。
ボタンをクリックでこの動作を可能にするにはマクロを使います。
ツール→マクロ→新しいマクロの記録→上記CSVでの保存手順を実行→ツール→マクロ→記録終了
オートシェイプでボタンを設置→図を右クリックして「マクロの登録」→先ほど記録したマクロを登録→
図を右クリックして「テキストの追加」で【CSVファイルを出力】と入力
のような感じです。
ただしこのままですとファイル名の変更が出来ず全て上書き保存となってしまいますし任意のシートの選択も出来ません。
ここから先はVBAで作りこむようになりますが初心者とのことですので
全て説明しようとすると本が1冊出来ちゃいそうです。
とりあえずは「名前をつけて保存」で、後はおいおい勉強してみては?
この回答への補足
回答ありがとうございました。
私の質問の仕方が悪く意図したことが伝えられなかったのですが、
任意のシートを指定したディレクトリに保存したいため、VBAでCSVファイル出力をしたいです。
ですが、VBAのスキルがないため、どの場所に、どのようなソースを書けばよいかを詳しく教えて頂きたかったです。
可能でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) CSVファイルでVBAを動かす方法 3 2023/04/04 10:22
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- Visual Basic(VBA) VBAで特定の場所にあるCSVファイル(複数)から特定場所を抜き出してExcelに転記したいです。 11 2023/05/23 16:29
- PHP 値の取り出し方について教えて下さい。 1 2023/03/31 13:30
- Visual Basic(VBA) エクセルVBA 4 2022/05/14 00:51
- Visual Basic(VBA) VBAで出力したCSVファイルの先頭にカンマを挿入したい 5 2022/10/14 12:20
- その他(プログラミング・Web制作) pythonのpandasのcsvの外部結合(outer_join)した際に列が想定とは異なる事象 1 2022/05/25 13:23
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- Excel(エクセル) セルを参照して条件で値をコピーする 3 2023/02/08 17:45
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ワード+エクセルのマクロ
-
エクセルのプロパティーでセキ...
-
Word文書:頁数カウント
-
ファイルのアクセス回数について
-
ExcelブックをGoogleスプレッド...
-
多数のエクセルファイルからデ...
-
エクセルで、フィルタかけたま...
-
EXCELからACCESSへデータをイン...
-
エクセルのマクロを記述したフ...
-
エクセル UserForm 呼び出しで...
-
EXCEL。違うバージョンの使用
-
エクセルでcsvファイルを開いて...
-
エクセルのマクロの記録でcs...
-
シートをコピーするマクロ
-
photoshop CC2019で画像の形式...
-
エクセルVBAでCSVファイ...
-
エクセルvba お世話になります...
-
Dドライブから外付けHDへコピー...
-
バイナリデーター内の文字を検索
-
EXCEL VBAにおけるサンプルコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのプロパティーでセキ...
-
ファイルのアクセス回数について
-
ExcelブックをGoogleスプレッド...
-
Wordで差込印刷した後に別々の...
-
Excel csv保存 列数が異なる場...
-
マクロ実行後、表示がおかしくなる
-
エクセル UserForm 呼び出しで...
-
エクセルファイル名に更新日時...
-
EXCEL 検索時の設定
-
サブフォルダから部分一致のエ...
-
PowerPoint 2002でファイル名を...
-
【Excel VBA】ファイルを保存し...
-
大量のCSVファイルをExcel形式...
-
複数のexcelのファイルを一括で...
-
実行時エラー52
-
エクセルのマクロで行と列の削...
-
For~Nextルーチンで最初の1回...
-
エクセルでcsvファイルを開いて...
-
VBAでエクセルで作成したフ...
-
Word2010で閉じるボタン押下後...
おすすめ情報