FinghtingMiao
asked on
How to filter a From by passing a value from another form
I have 2 forms
Form 1: [frm_DE_VacancyDatabase] and Form2: [frm_CY_NY_Change].
Now Form 2 has 2000 records, but I want to filter it our by the [id] passed from Form 1.
So I did the code on Form2.Open event. But seems do not work, still shows 2000+ records.
I attached my code (form open and form load), please help, thanks.
Form 1: [frm_DE_VacancyDatabase] and Form2: [frm_CY_NY_Change].
Now Form 2 has 2000 records, but I want to filter it our by the [id] passed from Form 1.
So I did the code on Form2.Open event. But seems do not work, still shows 2000+ records.
I attached my code (form open and form load), please help, thanks.
Private Sub Form_Load()
On Error GoTo Err_Form_Load
'Me.ServerFilterByForm = filterCondtition
Me.ServerFilter = filterCondtition
Me.Refresh
Forms![SwitchBoard]![PropertyNumber].Caption = Me.[Prop #]
'Forms![SwitchBoard]![Unit].Caption = Me.Unit
Me.Repaint
Exit_Form_Load:
If (closeForm) Then
DoCmd.Close acForm, "frm_CY_NY_Change", acSaveNo
End If
Exit Sub
Err_Form_Load:
MsgBox Err.Description
Resume Exit_Form_Load
End Sub
Private Sub Form_Open(Cancel As Integer)
On Error GoTo Err_Form_Open
' This occurs BEFORE Form_Load() event handler
closeForm = False
filterCondtition = "[ID]=" & Forms![frm_DE_VacancyDatabase].[ID]
Me.Repaint
MsgBox "form id is" + (CStr(Forms![frm_DE_VacancyDatabase].[ID]))
Exit_Form_Open:
closeForm = True
Exit Sub
Err_Form_Open:
MsgBox "Following error occurred trying to open form:" + vbCrLf + vbCrLf + Err.Description
Resume Exit_Form_Open
End Sub
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
it is better to use the Where condition instead of the Filter
ASKER
fyed and capricorn1
Yes, I am open form 2 from form 1 with a open botton.
I am going to try the solution ur provided, thanks.
Yes, I am open form 2 from form 1 with a open botton.
I am going to try the solution ur provided, thanks.
Where's your code that opens the second form? I'd use the WHERE condition in the 4th argument of the OpenForm command or macro.
dqmq,
it is been taken cared of with post from http:#a36513429
it is been taken cared of with post from http:#a36513429
ASKER
I have tried the solution.
On the form 1-> Openform 2 button, I have the click event with the code I attached, but still does not work.
Is anything wrong with my code?
On the form 1-> Openform 2 button, I have the click event with the code I attached, but still does not work.
Is anything wrong with my code?
Private Sub CY_NY_Change_Click()
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "frm_CY_NY_Change"
DoCmd.OpenForm stDocName, acNormal, "[ID] = " & Me.ID, stLinkCriteria, acFormEdit, acDialog
'DoCmd.OpenForm stDocName, , , stLinkCriteria, acFormEdit, acDialog
Exit_CY_NY_Change_Click:
Exit Sub
Err_CY_NY_Change_Click:
MsgBox Err.Description
Resume Exit_CY_NY_Change_Click
End Sub
ASKER
Sorry, actually the solution works.
Thank you all!
Thank you all!
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
>it is been taken cared of with post from http:#a36513429
Sorry, I don't intend to waste anyone's time giving duplicate answers. It's just that when I looked at the question, it had been sitting there for about 20 minutes, unanswered. It seems that in the minute or two it took me to type in a 1 sentence answer and press submit, 30 minutes of time on the EE clock had transpired. Occasionally, EE seems to exist in a time warp.
Sorry, I don't intend to waste anyone's time giving duplicate answers. It's just that when I looked at the question, it had been sitting there for about 20 minutes, unanswered. It seems that in the minute or two it took me to type in a 1 sentence answer and press submit, 30 minutes of time on the EE clock had transpired. Occasionally, EE seems to exist in a time warp.
np
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
in most cases the "Filter" does not work as expected.
ASKER
Thank you ALL!
ASKER