この記事は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