• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelマクロCSV出力 行に連番をつける)

ExcelマクロでCSV出力する際に行に連番をつける方法

このQ&Aのポイント
  • Excelマクロを使用してCSVファイルを出力する際、行に連番を付ける方法を教えてください。
  • Excelのデータシートの指定された範囲の行にデータが入っている場合のみ、CSVファイルに出力します。
  • また、データシートの特定のセルの値によって、CSVファイル内の特定の項目を置換する方法も知りたいです。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

With Sheets("データ") Print #1, "区分" & "," & "ID" & "," & "名前" For intRow = 17 To .Range("B" & Rows.Count).End(xlUp).Row If Trim(.Cells(intRow, 2).Value) <> "" And .Cells(intRow, 2).Value = "ああ" Then n = n + 1 Print #1, Replace(.Cells(intRow, 2), "ああ", "1") & "," & Trim(.Cells(intRow, 3)) & "," & Trim(.Cells(intRow, 4)) & "," & n ElseIf Trim(.Cells(intRow, 2).Value) <> "" And .Cells(intRow, 2).Value = "いい" Then n = n + 1 Print #1, Replace(.Cells(intRow, 2), "いい", "2") & "," & Trim(.Cells(intRow, 3)) & "," & Trim(.Cells(intRow, 4)) & "," & n End If Next intRow End With

148289
質問者

お礼

ご回答により解決しました。 ありがとうございました。

その他の回答 (1)

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

n = n + 1 Print #1, ・・・・・ Trim(.Cells(intRow, 4)) & "," & n

148289
質問者

補足

ご回答ありがとうございます。 ご回答いただいた方法は既に試みたのですが、実行すると 1,9999,太郎,1 2,8888,花子,1 1,7777,一郎,1 1,6666,次郎,1 というように、カウントアップされずに全て「1」になってしまいます。

関連するQ&A