Here's the code I use to set a the current session as the active session. In our environment, Extra is always open and visible. The user just sees the screen flashing. You have the option of locking the keyboard, but I don't usually do this.
'Extra Objects
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
Set Sessions = System.Sessions
If (Sessions Is Nothing) Then: MsgBox "Could not create the Sessions collection object. Stopping macro playback.": Stop
Set Sess0 = System.ActiveSession
If (Sess0 Is Nothing) Then MsgBox "Could not create the Session object. Stopping macro playback.": Stop
With the system visible, you have the ability to have user interaction as much as necessary.
calculus