I have a form in access. Below is the original code I had in the form. It worked fine, but I have to change it now. I made what I thought where the correct changes but I'm getting an error. I've tried two different ways and am getting two different errors.
Here is the original code that worked. S_Code_Type is for a dropdown list in a form.
Here is my first effort at a change that didn't work.
I received compiler error Else without IF
my third attempt w/a select case. Error I received here was runtime error 2046
command or action 'RecordsGoToNext' isnt available now.
Here is the original code that worked. S_Code_Type is for a dropdown list in a form.
Code:
Private Sub Form_Load()
Dim Sessions As Object, System As Object, Sess0 As Object
Set System = CreateObject("EXTRA.System")
Set Sessions = System.Sessions
Set Sess0 = System.ActiveSession
Do
Sess0.Screen.MoveTo 3, 18
Sess0.Screen.SendKeys (Account_Number & "<EraseEOF><Enter>")
Sess0.Screen.WaitHostQuiet (g_HostSettleTime)
Sess0.Screen.MoveTo 5, 73
Sess0.Screen.SendKeys (S_Code_Type & "<Enter>")
Sess0.Screen.WaitHostQuiet (g_HostSettleTime)
DoCmd.RunCommand acCmdRecordsGoToNext
Loop Until IsNull(Account_Number)
DoCmd.Close
End Sub
Here is my first effort at a change that didn't work.
I received compiler error Else without IF
Code:
Private Sub Form_Load()
Dim Sessions As Object, System As Object, Sess0 As Object
Set System = CreateObject("EXTRA.System")
Set Sessions = System.Sessions
Set Sess0 = System.ActiveSession
Do
Sess0.Screen.MoveTo 3, 18
Sess0.Screen.SendKeys (Account_Number & "<EraseEOF><Enter>")
Sess0.Screen.WaitHostQuiet (g_HostSettleTime)
Sess0.Screen.MoveTo 5, 73
'Sess0.Screen.SendKeys (S_Code_Type & "<Enter>")
If S_Code_Type = S77 Then Sess0.Screen.Senkeys ("F77" & "<Enter>")
'**complier error received here on next line ElseIf S_Code_Type = S78
ElseIf S_Code_Type = S78 Then Sess0.Screen.Senkeys ("F78" & "<Enter>")
ElseIf S_Code_Type = S79 Then Sess0.Screen.Senkeys ("F79" & "<Enter>")
ElseIf S_Code_Type = S80 Then Sess0.Screen.Senkeys ("F80" & "<Enter>")
End If
Sess0.Screen.WaitHostQuiet (g_HostSettleTime)
DoCmd.RunCommand acCmdRecordsGoToNext
Loop Until IsNull(Account_Number)
DoCmd.Close
End Sub
my third attempt w/a select case. Error I received here was runtime error 2046
command or action 'RecordsGoToNext' isnt available now.
Code:
Private Sub Form_Load()
Dim Sessions As Object, System As Object, Sess0 As Object
Set System = CreateObject("EXTRA.System")
Set Sessions = System.Sessions
Set Sess0 = System.ActiveSession
Do
Sess0.Screen.MoveTo 3, 18
Sess0.Screen.SendKeys (Account_Number & "<EraseEOF><Enter>")
Sess0.Screen.WaitHostQuiet (g_HostSettleTime)
Sess0.Screen.MoveTo 5, 73
Select Case S_Code_Type
Case Is = S77:
Sess0.Screen.Senkeys ("F77" & "<Enter>")
Case Is = S78:
Sess0.Screen.Senkeys ("F78" & "<Enter>")
Case Is = S79:
Sess0.Screen.Senkeys ("F79" & "<Enter>")
Case Is = S80:
Sess0.Screen.Senkeys ("F80" & "<Enter>")
End Select
Sess0.Screen.WaitHostQuiet (g_HostSettleTime)
DoCmd.RunCommand acCmdRecordsGoToNext '****runtime error here
Loop Until IsNull(Account_Number)
DoCmd.Close
End Sub