Excelの計算式でConfigが作成できるなら、
テキスト化も同時にできた方が効率的です。
今回はVBAというプログラミング技術が含まれますが、
テキスト化をするだけなので細かい知識は不要です。
※ボタンの設置方法やコードの貼り付け箇所も解説しています。
ただ、VBAを習得すると非常に便利ですので、
個人的には下記の書籍を手に取ることをお勧めします。
自動計算欄や途中計算欄、「Main」「Sub」シートを、
事前に作成済みであることを前提としますが、
下記、「DATA」シートの黄色枠を入力して、
「Config出力」ボタンのクリックによるテキスト化を紹介します。
正系のConfigが表示される「Main」シートはこのような状態です。
B列にConfig、出力するファイル名がC1セルに表示することに留意してください。
副系のConfigが表示される「Sub」シートはこのような状態です。
ボタンの設置とマクロの登録を行います。
VBAを利用するため、Excelオプションから「開発」タブを表示します。
「開発」タブから「コードの表示」を選択します。
VBAProjectを右クリックし、「挿入」→「標準モジュール」を選択します。
下記のVBAコードをコピーしてください。
Sub OutputTextWithoutBlanks()
Dim fileNum As Integer
Dim txtLine As String
Dim myRow As Long
Dim endRow As Long
'ファイル名の取得
confFileName = "\" & Range("C1")
'最終行の取得
endRow = Range("B65536").End(xlUp).Row
'FreeFile値を利用してファイル番号の重複を防ぐ
fileNum = FreeFile
'ファイルを上書きモードで開く
Open ThisWorkbook.Path & confFileName For Output As #fileNum
'1行目から開始
myRow = 1
'最終行まで繰り返す
Do Until myRow > endRow
'B列内容をレコードにセット
txtLine = Cells(myRow, 2).Value
'空白じゃなかった場合だけ
If txtLine <> "" Then
'テキストに書き出し
Print #fileNum, txtLine
End If
'行を加算
myRow = myRow + 1
Loop
'ファイルを閉じる
Close #infFF
End Sub
Sub SheetProtect()
ActiveSheet.Protect Password:="administrator"
End Sub
Sub SheetUnprotect()
ActiveSheet.Unprotect Password:="administrator"
End Sub
Sub CreateTextMain()
Sheets("Main").Activate
End Sub
Sub CreateTextSub()
Sheets("Sub").Activate
End Sub
Sub SaveBook()
ActiveWorkbook.Save
End Sub
Sub QuitWithoutSaving()
ActiveWorkbook.Saved = True
ActiveWorkbook.Close
End Sub
Private Sub Button1_Click()
Call SaveBook
Call CreateTextMain
Call SheetUnprotect
Call OutputTextWithoutBlanks
Call SheetProtect
Call CreateTextSub
Call SheetUnprotect
Call OutputTextWithoutBlanks
Call SheetProtect
Call QuitWithoutSaving
End Sub
コピーしたコードを「Module1」内に貼り付けたら、
上書き保存してください。
Excelブックの「DATA」シートに戻り、
「開発」タブの「挿入」→「ボタン」を選択し設置します。
マクロ名に「Button1_Click()」と入力し、
マクロの保存先に現在のブック名を選択します。
ボタンの表示名を変更したい場合は、ボタンを右クリックし、
「テキストの編集」で変更してください。
F12を押し、Excel マクロ有効ブック(*.xlsm)で保存します。
以上で、ボタンをクリックすればConfigがテキスト出力されます。
■補足
保存時、下記のようなメッセージが表示されることがあります。
動作に問題はありませんが、このメッセージを非表示にすることもできます。
非表示にするには、
「ファイル」→「オプション」→「セキュリティセンター」→「セキュリティセンターの設定」を開き、
「ファイルを保存するときにファイルのプロパティから個人情報を削除する」
のチェックを外してください。