yoshiislandblog.net
元営業の駆け出しアラサーSEが、休日にMACと戯れた際の殴り書きメモ。日々勉強。日々進歩。

この記事は3年以上前に書かれた記事で内容が古い可能性があります

VBAでTTLマクロ自動作成

2016-03-17

先日ご紹介したttlマクロを自動作成するVBAマクロを作成。

(1)エクセルセルにホスト名など必要な情報を入れる
(2)自動TTLマクロ生成と実行
(3)実行結果ログの判定


Option Explicit

Sub CreateTTL()

Dim FileNumber As Integer
Dim FilePath As String
Dim TargetServer As String
Dim TargetPort As String

FileNumber = 1
FilePath = ”<xxx>\test.ttl”
TargetServer = Cells(4, 4).Value  ' サーバー名を入れるセルを指定
TargetPort = Cells(4, 5).Value  ' ポート番号を入れるセルを指定

' ttl作成

Open FilePath For Output As #FileNumber

Print #FileNumber, ”==========================================”
Print #FileNumber, ”HOST = '” ;TargetServer; ”'”
Print #FileNumber, ”PORT = '” ;TargetPort; ”'”
Print #FileNumber, ”LogPath = '<xxx>'”
Print #FileNumber, ”==========================================”
Print #FileNumber, ””
Print #FileNumber, ””
Print #FileNumber, ”==========================================”
Print #FileNumber, ”接続”
Print #FileNumber, ”==========================================”
Print #FileNumber, ”strconcat target HOST”
Print #FileNumber, ”strconcat target ':'”
Print #FileNumber, ”strconcat target PORT”
Print #FileNumber, ”strconcat target ' /nossh'”
Print #FileNumber, ””
Print #FileNumber, ”サーバへの接続”
Print #FileNumber, ”connect target”
Print #FileNumber, ””
Print #FileNumber, ””
Print #FileNumber, ”==========================================”
Print #FileNumber, ”ログ取得開始”
Print #FileNumber, ”==========================================”
Print #FileNumber, ”ファイル名設定”
Print #FileNumber, ”gettime logname '%Y%m%d_%H%M%S%h.log'”
Print #FileNumber, ”ログ出力先設定”
Print #FileNumber, ”fullpath = LogPath”
Print #FileNumber, ”strconcat fullpath logname”
Print #FileNumber, ”ログ取得開始”
Print #FileNumber, ”logopen fullpath 0 1”
Print #FileNumber, ””
Print #FileNumber, ””
Print #FileNumber, ”==========================================”
Print #FileNumber, ”ログイン後処理”
Print #FileNumber, ”==========================================”
Print #FileNumber, ”wait '$'”
Print #FileNumber, ”sendln 'uname -n'”
Print #FileNumber, ””
Print #FileNumber, ””
Print #FileNumber, ”ここに色々処理記述”
Print #FileNumber, ””
Print #FileNumber, ””
Print #FileNumber, ”==========================================”
Print #FileNumber, ”ログアウト処理”
Print #FileNumber, ”==========================================”
Print #FileNumber, ””
Print #FileNumber, ”wait '$'”
Print #FileNumber, ”sendln 'exit'”
Print #FileNumber, ””
Print #FileNumber, ”logclose”
Print #FileNumber, ”

Close #FileNumber1

' ttl実行
Shell ”<xxx>\ttermpro.exe /M=<xxx>\test.ttl”

End Sub
Sub LogJudge()

Dim LogFile As String
Dim FileNumber2 As Integer
Dim Line As String

LogFile = ”<xxx>\log.txt”
FileNumber2 = 2

Open LogFile For Input As FileNumber2
Input #FileNumber2, Line
If Line Like ”*flag*” Then
Cells(12, 4).Value = ”○”  ' ログ評価結果を示すセルを指定
Else
Cells(12, 4).Value = ”×”  ' ログ評価結果を示すセルを指定
End If

Close #FileNumber2

End Sub