ダウンロードプログラム自動合成の例(EXCEL VBA)
一切動作保証はしません!!!!
シート名 File の1行2列に出力ファイル名
現在開いているシート1行2列にテーブル名、2行目以下(2列目)に項目名を入れます
Sub 実行()
Dim TB As String
Dim FLD As String
Dim I As Long
Open Worksheets("File").Cells(1, 2).Value For Output As #1
TB = Cells(1, 2).Value
Print #1, "Parameters FILENAME(128) type C."
Print #1, "DATA CN_TAB(1) TYPE X VALUE 9."
Print #1, ""
Print #1, "* SVFファイル作成用"
Print #1, "DATA: BEGIN OF TB_SVF OCCURS 0,"
Print #1, " DATA(2048) TYPE C,"
Print #1, "END OF TB_SVF."
Print #1, ""
Print #1, "OPEN DATASET FILENAME FOR OUTPUT IN TEXT MODE."
Print #1, ""
Print #1, "DATA : BEGIN OF TB_" & TB & " OCCURS 0,"
I = 2
Do Until Cells(I, 2).Value = ""
FLD = Cells(I, 2).Value
Print #1, FLD & " like " & TB & "-" & FLD & ","
I = I + 1
Loop
Print #1, "END OF TB_" & TB & "."
Print #1, ""
Print #1, "SELECT"
I = 2
Do Until Cells(I, 2).Value = ""
FLD = Cells(I, 2).Value
Print #1, FLD
I = I + 1
Loop
Print #1, "FROM " & TB
Print #1, "INTO TABLE TB_" & TB & "."
Print #1, ""
Print #1, "CLEAR TB_SVF[]."
Print #1, "LOOP AT TB_" & TB & "."
Print #1, "CONCATENATE"
I = 2
Do Until Cells(I, 2).Value = ""
FLD = Cells(I, 2).Value
Print #1, "TB_" & TB & "-" & FLD & " " & "CN_TAB"
I = I + 1
Loop
Print #1, "INTO TB_SVF."
Print #1, "APPEND TB_SVF."
Print #1, "ENDLOOP."
Print #1, ""
Print #1, "LOOP AT TB_SVF."
Print #1, "TRANSFER TB_SVF TO FILENAME."
Print #1, "ENDLOOP."
Print #1, "CLOSE DATASET FILENAME."
Close #1
End Sub