Attachmate を使用して、特定のフレーズが発生したときに反応し、インライン コマンドを介してコマンドを自動的に実行する VBA スクリプトを作成しようとしています。基本的に、フレーズが表示されると、ユーザーに特定の数量を求める入力ボックスが表示され、VBA コードがその数量を取得して端末に挿入し、さまざまなメニューをジャンプして内部ラベルを作成します。しかし、私の問題は、ホストから返される可能性のあるさまざまな文字列に VBA コードを反応させる方法がわからないことです。「続行するには入力してください」と表示されることもあれば、「ユーザーを選択してください」と表示されることもあります。したがって、特定のアクションを実行するために受信したステートメントに基づいて実行したいのですが、端末がホストから受信しているものをキャプチャするためのコマンドが何であるかはわかりません。「waitforstring」と「
'variable declarations
Dim count As Long 'var used to indicate how many times code should loop (how many labels should be print)
Dim drugname As String
Dim qtyinput As Long
Dim CR As String ' Chr(rcCR) = Chr(13) = Control-M
Dim LF As String ' Chr(rcLF) = Chr(10) = Control-J
Dim strcheck As String
'assign values to variables
count = 0
CR = Chr(Reflection2.ControlCodes.rcCR)
LF = Chr(Reflection2.ControlCodes.rcLF)
qtyinput = InputBox("Number of items being sent", Quantity)
drugname = .GetText(22, 15, 22, 46) ' StartRow:=22, StartColumn:=15,EndRow:=22, EndColumn:=46 'copies text from screen
' Press EditCopy (Copy the selection and put it on the Clipboard).
'.Copy rcSelection, rcAsPlainText -- not needed
.Transmit qtyinput & CR
.Transmit CR
'strcheck = .readline("00:00:01")
'MsgBox strcheck
'If .WaitForString("Press " & Chr(34) & "RETURN" & Chr(34) & " to continue, " & Chr(34) & "^" & Chr(34) & " to stop: ") Then .Transmit CR
'Select Case strcheck
' Case strcheck Like "to continue"
' .Transmit CR
'Case strcheck Like "*Select CLIENT*"
' .Transmit CR
'End Select
.Transmit "^MED" & CR
.Transmit "3" & CR
.Transmit "10" & CR