2022年10月11日火曜日

エクセルシートのセルを個別ファイルに書き出すためのメモ「ヘルプの森」より

https://www.helpforest.com/excel/emv_sample/ex100007.htm

を参照すること。エクセルから個別シートへの書き出しに使用したマクロ

エクセルファイルは,B欄に通し番号,A欄を書き出す情報を入れる。この場合のマクロはSample 3を使用する。

結果:ドライブFのdataファイルの中のabstファイルに書き出される。<感動>

Cのdataのabstフォルダーにあるcsvファイル”MITLang.csv”を,1つずつtxtに書き出す場合(同じところに書き出される)

Sub kakidashi()

Dim R_data As Integer      '行番号

    Dim n As Integer      '連番用

    R_data = 1

    n = 0

    Do While Cells(R_data, 1) <> ""

        Open "C:\data\abst\MITLang" & n & ".txt" For Output As #1

        Print #1, Cells(R_data, 1)

        Close #1

        R_data = R_data + 1

        n = n + 1

    Loop

End Sub


*****

Sub Sample2()


    Dim R_data As Integer      '行番号

    Dim n As Integer      '連番用

    R_data = 1


    Do While Cells(R_data, 1) <> ""


        n = FreeFile

        Open "F:\data\abst\jp" & Cells(R_data, 2) & ".txt" For Output As #n

        Print #n, Cells(R_data, 1)

        R_data = R_data + 1

        Close #n

        

    Loop


End Sub

****
連番を振る時は,Sample2でよい。

 Sub Sample2()


    Dim R_data As Integer      '行番号

    Dim n As Integer      '連番用

    R_data = 1

    n = 0


    Do While Cells(R_data, 1) <> ""


        Open "F:\data\abst\chem" & n & ".txt" For Output As #1

        Print #1, Cells(R_data, 1)

        Close #1

        R_data = R_data + 1

        n = n + 1

    Loop


End Sub