[access]source de controle d'un champ
kenny
-
amadou.14 -
amadou.14 -
Bonjour,
Je rencontre actuellement un problème sur le développement d'une application sous access qui est le suivant :
Le but est de faire une recherche avancée dans la base de données dans différentes tables.
J'ai créé un formulaire avec un champ qui renseigne sur chaque table associée et j'aimerais créé une reqête dynamiquement à partir de ces informations en vb.
J'arrive à accéder aux données du formulaire pour créer la requête mais je ne sais pas comment l'exécuter.
J'ai essayé de changer la source de contrôle d'un champ pour qu'il affiche le résultat de la requête mais sans succès car je pense que je m'y prend mal ou ce n'est pas la bonne solution.
Si quelqu'un trouve le temps de me répondre avec toutes ces fêtes, je serais ravi.
Je vous souhaite en tout cas à tous une bonne année!
Merci d'avance.
Version access : 2007.
Je rencontre actuellement un problème sur le développement d'une application sous access qui est le suivant :
Le but est de faire une recherche avancée dans la base de données dans différentes tables.
J'ai créé un formulaire avec un champ qui renseigne sur chaque table associée et j'aimerais créé une reqête dynamiquement à partir de ces informations en vb.
J'arrive à accéder aux données du formulaire pour créer la requête mais je ne sais pas comment l'exécuter.
J'ai essayé de changer la source de contrôle d'un champ pour qu'il affiche le résultat de la requête mais sans succès car je pense que je m'y prend mal ou ce n'est pas la bonne solution.
Si quelqu'un trouve le temps de me répondre avec toutes ces fêtes, je serais ravi.
Je vous souhaite en tout cas à tous une bonne année!
Merci d'avance.
Version access : 2007.
A voir également:
- [access]source de controle d'un champ
- Fan controle - Télécharger - Optimisation
- Controle parental disney plus - Guide
- Bbox controle d'acces wifi - Forum WiFi
- Access runtime ✓ - Forum Access
- Touche controle bloquée ✓ - Forum Clavier
3 réponses
Private Sub cboID_ARTICLE_Change()
Dim db As Object
Dim rs As Object
On Error GoTo Err_cboID_ARTICLE_Change
Set db = DBEngine(0)(0)
Set rs = db.OpenRecordset("SELECT TOP 1 ID_BRAND FROM Expenses WHERE ID_SHOP = " & Me.cboID_SHOP & " AND ID_ARTICLE = " & Me.cboID_ARTICLE & " GROUP BY ID_BRAND ORDER BY Count(ID_BRAND) DESC")
Me.cboID_BRAND.DefaultValue = rs(0)
Exit_cboID_ARTICLE_Change:
Set rs = Nothing
Set db = Nothing
Exit Sub
Err_cboID_ARTICLE_Change:
MsgBox Err.Description
Resume Exit_cboID_ARTICLE_Change
End Sub
Dim db As Object
Dim rs As Object
On Error GoTo Err_cboID_ARTICLE_Change
Set db = DBEngine(0)(0)
Set rs = db.OpenRecordset("SELECT TOP 1 ID_BRAND FROM Expenses WHERE ID_SHOP = " & Me.cboID_SHOP & " AND ID_ARTICLE = " & Me.cboID_ARTICLE & " GROUP BY ID_BRAND ORDER BY Count(ID_BRAND) DESC")
Me.cboID_BRAND.DefaultValue = rs(0)
Exit_cboID_ARTICLE_Change:
Set rs = Nothing
Set db = Nothing
Exit Sub
Err_cboID_ARTICLE_Change:
MsgBox Err.Description
Resume Exit_cboID_ARTICLE_Change
End Sub
J'ai essayé cette proposition sans succès, il me disait qu'il n'y avait pas d'enregistrement en cours...
J'ai trouvé une autre solution sui consiste à intégrer un sous formulaire qui est filtré selon les champs saisies
Private Sub Commande39_Click()
Dim strcritere As String
strcritere = ""
If Not IsNull(Me.cepage) Then
strcritere = "([nomcepage]='" & Me.cepage & "')"
End If
If Not IsNull(Me.pays) Then
If strcritere <> "" Then strcritere = strcritere & "and"
strcritere = strcritere & "([codepays]=" & Me.pays & ")"
End If
If Not IsNull(Me.terroir) Then
If strcritere <> "" Then strcritere = strcritere & "and"
strcritere = strcritere & "([coderegion]=" & Me.terroir & ")"
End If
If Not IsNull(Me.vin) Then
If strcritere <> "" Then strcritere = strcritere & "and"
strcritere = strcritere & "([nomvin]like'" & Me.vin & "*')"
End If
MsgBox strcritere
Me!resultat.Form.Filter = strcritere
Me!resultat.Form.FilterOn = True
End Sub
etc...
J'ai trouvé une autre solution sui consiste à intégrer un sous formulaire qui est filtré selon les champs saisies
Private Sub Commande39_Click()
Dim strcritere As String
strcritere = ""
If Not IsNull(Me.cepage) Then
strcritere = "([nomcepage]='" & Me.cepage & "')"
End If
If Not IsNull(Me.pays) Then
If strcritere <> "" Then strcritere = strcritere & "and"
strcritere = strcritere & "([codepays]=" & Me.pays & ")"
End If
If Not IsNull(Me.terroir) Then
If strcritere <> "" Then strcritere = strcritere & "and"
strcritere = strcritere & "([coderegion]=" & Me.terroir & ")"
End If
If Not IsNull(Me.vin) Then
If strcritere <> "" Then strcritere = strcritere & "and"
strcritere = strcritere & "([nomvin]like'" & Me.vin & "*')"
End If
MsgBox strcritere
Me!resultat.Form.Filter = strcritere
Me!resultat.Form.FilterOn = True
End Sub
etc...