メモ、備忘録、その他雑記を記載します。
ただし、このHPに記載している情報を利用した結果 損失・損害等が発生したとしても筆者は責任を持ちません。
Sub writeCsvFile()
Const fileName = "\SAMPLE.csv"
Dim intFF As Integer ' FreeFile値
' Dim X(1 To 5) As Variant ' 書き出すレコード内容
Dim ROW As Long ' 収容するセルの行
Dim ROWMAX As Long ' データが収容された最終行
Dim COL As Long ' カラム(Work)
Dim list As New Collection
Dim i As Long
' 収容最終行の判定
ROWMAX = Range("A65536").End(xlUp).ROW
' FreeFile値の取得(以降この値で入出力する)
intFF = FreeFile
' 指定ファイルをOPEN(出力モード)
Open ThisWorkbook.Path & fileName For Output As #intFF
' 2行目から開始
ROW = 2
Debug.Print "Hello world"
' 最終行まで繰り返す
Dim nSize As Long
Do Until ROW > ROWMAX
nSize = list.Count
For i = nSize To 1 Step -1
list.Remove (i)
Next
' A~E列内容をレコードにセット(先頭は2行目)
For COL = 1 To 5
list.Add (Cells(ROW, COL).Value)
Next COL
' レコードを出力
Write #intFF, list(1), list(2), list(3), list(4), list(5)
' 行を加算
ROW = ROW + 1
Loop
' 指定ファイルをCLOSE
Close #intFF
'削除の結果をメッセージボックスで確認
' MsgBox "list.Countの結果は: " & list.Count
End Sub
Const fileName = "\SAMPLE.csv"
Dim intFF As Integer ' FreeFile値
' Dim X(1 To 5) As Variant ' 書き出すレコード内容
Dim ROW As Long ' 収容するセルの行
Dim ROWMAX As Long ' データが収容された最終行
Dim COL As Long ' カラム(Work)
Dim list As New Collection
Dim i As Long
' 収容最終行の判定
ROWMAX = Range("A65536").End(xlUp).ROW
' FreeFile値の取得(以降この値で入出力する)
intFF = FreeFile
' 指定ファイルをOPEN(出力モード)
Open ThisWorkbook.Path & fileName For Output As #intFF
' 2行目から開始
ROW = 2
Debug.Print "Hello world"
' 最終行まで繰り返す
Dim nSize As Long
Do Until ROW > ROWMAX
nSize = list.Count
For i = nSize To 1 Step -1
list.Remove (i)
Next
' A~E列内容をレコードにセット(先頭は2行目)
For COL = 1 To 5
list.Add (Cells(ROW, COL).Value)
Next COL
' レコードを出力
Write #intFF, list(1), list(2), list(3), list(4), list(5)
' 行を加算
ROW = ROW + 1
Loop
' 指定ファイルをCLOSE
Close #intFF
'削除の結果をメッセージボックスで確認
' MsgBox "list.Countの結果は: " & list.Count
End Sub
PR
コメントを書く