- 締切済み
マクロCSV出力
Sheet1に入力されている値をCSVファイルに出力したいと思っております。 但し、特定のセルだけを取得して、1つのファイルに出力したいと思っています。 (1)D2~G2に入力されている値を取得 (2)E4~E10までと、E4~E10の最終列までの値を取得 (3)B11の値を取得 (4)A13~A列の最終行まで、A13~A列の最終行の最終列までの値を取得 (1)、(2)、(3)、(4)の値を取得して、1つのCSVファイルに出力するプログラムを作成したいと思っております。 (1)は1行目に出力 (2)は2行目~8行目に出力 (3)は9行目に出力 (4)は10行目以降に出力 出力の形式は ”TEST”,” ”,”SMP”のようにダブルクォーテーションで値を囲って出力したいと思っています。 値が入っていないセルは” ”,としたいと思っております。 サンプルを作成して頂けないでしょうか。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- mt2008
- ベストアンサー率52% (885/1701)
皆さん正論だけどちょっとかわいそうなのでサンプルを。 Sheet2に、出力したい形にリンクを貼ってください。ただし、ちゃんとデータがない場合は空白になるように(例:Sheet2のA1に=""&Sheet1!D2、B1に=""&Sheet1!E2、……)。 あとは以下のコードを動かすと「”」でくくったCSVを作ります。 Sub Sample() nFilenum = FreeFile() Open ThisWorkbook.Path & "\Sample.csv" For Output As #nFilenum i = 1 With Sheets(2) Do While (True) If i > 10 And .Cells(i, 1) = "" Then Exit Do Write #nFilenum, .Cells(i, 1) & "", .Cells(i, 2) & "", .Cells(i, 3) & "", .Cells(i, 4) & "" i = i + 1 Loop End With Close #nFilenum MsgBox ("終了") End Sub
- MARU4812
- ベストアンサー率43% (196/452)
質問でもないし、サンプルというレベルでもない。 そのまま使えるプログラムを無料で作らせようとしているだけ。 いい大人が詐欺みたいな事しないでよ。 会社員とかプロフィールに書くなら人件費無視しないでください。
- kamikami30
- ベストアンサー率24% (812/3335)
すみません。嫌です。 調べると考えるができないなら、自作しようとしない方がいいです。 それでもやりたければ、外注してください。 仕事ならやります。