2012-04-25 17 views
1

Attachmate Extra!を使用して次のマクロを記録しました。仕事でのX-treme。私はバージョン9.0を使用していると思います。私はさまざまな画面にまたがるレポートからデータを "掻き集める"ことを試みており、各ページを.txtまたは.prnファイルに印刷しています。提示されたコードは必要なすべての画面をステップしていますが、MS Excelで操作したいファイルに結果を出力できません。ファイルにページを印刷するAttachmateデータスクレイピングマクロ

私はAttachmateを新しくしていますので、どんな助力にも感謝します。それは出力を指示するために数行のコードを追加するだけでいいですか、ここにはもっと大きな画像がありますか?事前に多くのお手伝いをありがとうございます!

' Global variable declarations 
Global g_HostSettleTime% 
Global g_szPassword$ 

Sub Main() 
'-------------------------------------------------------------------------------- 
' Get the main system object 
    Dim Sessions As Object 
Dim System As Object 
Set System = CreateObject("EXTRA.System") ' Gets the system object 
If (System is Nothing) Then 
    Msgbox "Could not create the EXTRA System object. Stopping macro playback." 
    STOP 
End If 
Set Sessions = System.Sessions 

If (Sessions is Nothing) Then 
    Msgbox "Could not create the Sessions collection object. Stopping   
      macro playback." 
    STOP 
End If 
    '-------------------------------------------------------------------------------- 
    ' Set the default wait timeout value 
g_HostSettleTime = 3000  ' milliseconds 

OldSystemTimeout& = System.TimeoutValue 
If (g_HostSettleTime > OldSystemTimeout) Then 
    System.TimeoutValue = g_HostSettleTime 
End If 

    ' Get the necessary Session Object 
Dim Sess0 As Object 
Set Sess0 = System.ActiveSession 
If (Sess0 is Nothing) Then 
    Msgbox "Could not create the Session object. Stopping macro playback." 
    STOP 
End If 
If Not Sess0.Visible Then Sess0.Visible = TRUE 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 

    ' This section of code contains the recorded events 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf11>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf10>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf8>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf3>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 
Sess0.Screen.Sendkeys("<Pf3>") 
Sess0.Screen.WaitHostQuiet(g_HostSettleTime) 

System.TimeoutValue = OldSystemTimeout 

    End Sub 

答えて

1

私はExcel VBAとAttachmate Extraを利用します。オブジェクトライブラリを使用して、中間ファイルではなくExcelに目的の値を引き出します。

具体的にはgetstringFunction GetString(Row As Integer, Col As Integer, Length As Integer, [Page]) As String)の値をExcelシートにドロップします。

単純なテキストプルであるVBAコードの下の挿入を参照してください。

VBAウィンドウでAttachmate Extra Object LibraryをExcelに追加するには、Tools> References>を選択し、リストからAttachmate Extra Object Libraryを選択するか、項目を参照します。

Excel VBAオブジェクトブラウザを使用して、オブジェクト、プロパティ、およびメソッドを表示できます。

Sub MF_Status_Test() 

    ' Test Order Lookup Macro 
    Set Sys = GetObject("C:\Program Files\E!PC\Sessions\Mainframe.EDP") 

    Set MyScreen = Sys.Screen 

    Do While ActiveCell.Offset(0, 0).Value <> "" 
     Let Order = ActiveCell.Offset(0, 0).Value 
     MyScreen.SendKeys (Order) 

     MyScreen.SendKeys ("<enter>") 
     Found1st = MyScreen.WaitHostQuiet(150) 

     Dt = MyScreen.getstring(7, 11, 8) 
     Let ActiveCell.Offset(0, 1).Range("A1") = Dt 
     Let Dt = "" 

     ST = MyScreen.getstring(6, 11, 2) & MyScreen.getstring(17, 12, 3) 
     Let ActiveCell.Offset(0, 2).Range("A1") = ST 
     Let ST = "" 

     Amt = MyScreen.getstring(3, 53, 10) 
     Let ActiveCell.Offset(0, 3).Range("A1") = Trim(Amt) 
     Let Amt = "" 

     MyScreen.SendKeys ("<PF8>") 

     Dt = MyScreen.getstring(7, 11, 8) 
     Let ActiveCell.Offset(0, 4).Range("A1") = Dt 
     Let Dt = "" 

     ST = MyScreen.getstring(6, 11, 2) & MyScreen.getstring(17, 12, 3) 
     Let ActiveCell.Offset(0, 5).Range("A1") = ST 
     Let ST = "" 

     Amt = MyScreen.getstring(3, 53, 10) 
     Let ActiveCell.Offset(0, 6).Range("A1") = Trim(Amt) 
     Let Amt = "" 

     Found1st = MyScreen.WaitHostQuiet(150) 

     ActiveCell.Offset(1, 0).Range("A1").Select 
    Loop 
End Sub 
+0

:セッションではとも画面から値を読み取ります – Ten98

0

これを行う最善の方法は、Attachmate EXTRAにフックすることです。 Excelからのセッションではなく、他の方法です。

Attachmate Object Libraryをインストールすると、デバッグなどに役立ちますが、必須ではありません。

ここには、現在開いているEXTRAにキーを送信できるオブジェクトライブラリをインストールせずにExcelから実行できる基本的なVBAモジュールがあります。それはなど、デバッグのために多少役立つんが、あなたが実際にこれを行うには、オブジェクトライブラリを必要としない

Sub GetData() 

Dim Sessions As Object 
Dim System As Object 
Dim Sess0 As Object 

'Extra Objects 
Set System = CreateObject("EXTRA.System") 
Set Sessions = System.Sessions 
Set Sess0 = System.ActiveSession 
If Sess0 Is Nothing Then 
    MsgBox ("Could not create the Session object. Stopping macro playback.") 
    Exit Sub 
End If 

If Not Sess0.Visible Then Sess0.Visible = True 
Sess0.Screen.WaitHostQuiet (3000) 

'Now the active EXTRA! session is bound to the Object "Sess0", we can use it like a normal VBA object: 

Sess0.Screen.SendKeys ("<Pf8>") ' Press F8 
Sess0.Screen.WaitHostQuiet (1000) ' Wait for 1 second for the screen to stop updating (should really do this after every keypress that causes the mainframe to update) 

Sess0.Screen.MoveTo 21, 28 ' Move the cursor to row 21, column 28. 

Sess0.Screen.SendKeys ("<Pf9>") ' Press F9 
Sess0.Screen.WaitHostQuiet (1000) 

Sess0.Screen.SendKeys ("<Tab><Tab><Tab>Logon<Enter>") ' Press Tab 3 times, then type "Logon" and press enter 
Sess0.Screen.WaitHostQuiet (1000) 

Dim SomeString as String 
SomeString = Sess0.Screen.GetString(1, 1, 20) ' Read the first 20 characters displayed on the screen to "SomeString" 

Sess0.Connected = False ' Disconnect from the mainframe session 

'Tidying up 
System.TimeoutValue = OldSystemTimeout 
Set Sessions = Nothing 
Set System = Nothing 
Set Sess0 = Nothing 

End Sub