cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008
-
4 mai 2008 à 10:58
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008
-
13 mai 2008 à 22:21
BONJOUR
frnchement j ai essaye plain de code mais sa marche pas, alors si quelqu'un peut m aide
voila je cherche l equivalent de se code mais en moin long que sa (ca marche mais c pas pratique )
Private Sub DC_ZI_Click(Area As Integer)
SO = "La Soukra"
BA = "Ben Arous"
FO = "Fouchana"
HC = "Hammam Chatt"
MG = "Megrine"
MO = "Mourouj"
RA = "Rades"
DH = "Douar Hicher"
MR = "Mornaguia"
GO = "La Goulette"
Select Case DC_DELEG
Case SO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_sokra" 'zone_sokra est une requette de la table general qui apartien a la ville de sokra
DC_ZI.ListField = "nom_zone"
Case BA
DC_ZI.Refresh
DC_ZI.RowMember = "zone_benarous"
DC_ZI.ListField = "nom_zone"
Case FO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_fouchana"
DC_ZI.ListField = "nom_zone"
Case HC
DC_ZI.Refresh
DC_ZI.RowMember = "zone_hamamchat"
DC_ZI.ListField = "nom_zone"
Case MG
DC_ZI.Refresh
DC_ZI.RowMember = "zone_megrine"
DC_ZI.ListField = "nom_zone"
Case MO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_mourouj"
DC_ZI.ListField = "nom_zone"
Case RA
DC_ZI.Refresh
DC_ZI.RowMember = "zone_rades"
DC_ZI.ListField = "nom_zone"
Case DH
DC_ZI.Refresh
DC_ZI.RowMember = "zone_douarhicher"
DC_ZI.ListField = "nom_zone"
Case MR
DC_ZI.Refresh
DC_ZI.RowMember = "zone_mornaguia"
DC_ZI.ListField = "nom_zone"
Case GO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_goulette"
DC_ZI.ListField = "nom_zone"
End Select
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 10 mai 2008 à 17:34
je te recopie le code que tu nous avais indiqué lorsque tu as posé ta question, code qui fonctionnait mais que tu voulais réduire :
Private Sub DC_ZI_Click(Area As Integer)
SO = "La Soukra"
BA = "Ben Arous"
FO = "Fouchana"
HC = "Hammam Chatt"
MG = "Megrine"
MO = "Mourouj"
RA = "Rades"
DH = "Douar Hicher"
MR = "Mornaguia"
GO = "La Goulette"
Select Case DC_DELEG
Case SO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_sokra" 'zone_sokra est une
requette de la table general qui apartien a la ville de
sokra
DC_ZI.ListField = "nom_zone"
Case BA
DC_ZI.Refresh
DC_ZI.RowMember = "zone_benarous"
DC_ZI.ListField = "nom_zone"
Case FO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_fouchana"
DC_ZI.ListField = "nom_zone"
Case HC
DC_ZI.Refresh
DC_ZI.RowMember = "zone_hamamchat"
DC_ZI.ListField = "nom_zone"
Case MG
DC_ZI.Refresh
DC_ZI.RowMember = "zone_megrine"
DC_ZI.ListField = "nom_zone"
Case MO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_mourouj"
DC_ZI.ListField = "nom_zone"
Case RA
DC_ZI.Refresh
DC_ZI.RowMember = "zone_rades"
DC_ZI.ListField = "nom_zone"
Case DH
DC_ZI.Refresh
DC_ZI.RowMember = "zone_douarhicher"
DC_ZI.ListField = "nom_zone"
Case MR
DC_ZI.Refresh
DC_ZI.RowMember = "zone_mornaguia"
DC_ZI.ListField = "nom_zone"
Case GO
DC_ZI.Refresh
DC_ZI.RowMember = "zone_goulette"
DC_ZI.ListField = "nom_zone"
End Select
End Sub
en regardant chaque Case on s'aperçoit que le code est partout le même A L'EXCEPTION de SO et GO
en effet DC_ZI.RowMember reçoit le Text de DC_DELEG, en minuscule, sans espace, sauf pour SO et GO auxquels en plus tu enlèves "La "
If InStrB(1, DC_DELEG, "La ") Then 'si la chaine contient "La "
sBuffer = Right$(DC_DELEG, Len(DC_DELEG) - 3) 'la chaine se voit ôtée de ce préfixe Else 'sinon sBuffer = Replace(DC_DELEG, " ", vbNullString) 'on supprime les espaces
End If
(...) DC_ZI.RowMember "zone_" & LCase$(sBuffer) 'row reçoit "zone_" + notre tampon en minuscule
normalement ont a choi dans DC_GOUV TUNIS, ARIANA, BEN AROUS ET MANOUBA
ici il n'y aurait aucun intérêt à regarder si un item commence par "TUN" puisque ce n'est pas une parti que tu veux supprimer. la seule chose sera l'espace pour BEN AROUS, ainsi (je suppose) que les minuscules
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 4 mai 2008 à 12:29
ca marche marche pas
le probleme que je doit filtre le combobox de la table delegation selon les gouvernorat
et le code que j ai fais ca marche mais ...
merci pour votre aide mais les deux code ne marche pas
voila je cherche si il ya une equivlente a la fonction filtred dans delphi en vb6 pour ecrire un vrais codes
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 4 mai 2008 à 13:18
Salut,
J'adore les "ca marche pas", as-tu au moins essayé de comprendre les algo qu'on te donne ??? Faut faire un minimum de travail lorsqu'on te donne un code. Le fait de bêtement copier-coller les codes ne suffit pas !
Dans le principe, ca marche très bien ! Ensuite, tu n'as plus qu'à transposer dans ton cas pour que "ca marche" !
Le principe de mon code marche très bien, y'a juste à corriger les 2-3 petites erreurs de syntaxes, ce qui donne :
Set valeurs = New Collection
Call valeurs.Add("zone_sokra", "La Soukra")
Call valeurs.Add("zone_benarous", "Ben Arous")
Call valeurs.Add("zone_fouchana", "Fouchana")
Call valeurs.Add("zone_hamamchat", "Hammam Chatt")
Call valeurs.Add("zone_megrine", "Megrine")
Call valeurs.Add("zone_mourouj", "Mourouj")
Call valeurs.Add("zone_rades", "Rades")
Call valeurs.Add("zone_douarhicher", "Douar Hicher")
Call valeurs.Add("zone_mornaguia", "Mornaguia")
Call valeurs.Add("zone_goulette", "La Goulette")
______________________________________
DarK Sidious
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 4 mai 2008 à 13:54
j ai 3 combobox DC_GOUV, DC_DELEG, DC_ZI
DC_GOUV le premie est connecte avec tab_gouv de ma bd access
DC_DELEG la 2em est connecte avec tab_deleg de ma bd access (comme j ai pas trouvecomment faire un filtre j ai fais 4 requete
deleg_tunis, deleg_ariana, deleg_manouba, deleg_benarous (select* from tab_gouv nom_deleg=''nom")
DC_ZI le 3eme est connecte avec tab_zone de ma bd access (meme chose pour mes 11 zone)
sachan que je ne me connecte pas directement a acces , j utilise dataenvironement
en metton votre code le champs de a zone industriel reste toujour vide et cela n afiche aucune erreur de compilation
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 10 mai 2008 à 13:19
bonjour
merci pour votre
bon voila j ai essaye votre code , il m a affiche un message d erreur " utilisation incorecte de la propriete"
c est pas un probelem de droit d accée??
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 10 mai 2008 à 15:38
dsl j ai pas vus qu il maque = , pourtant sa fait un bout de temps que je cherche se qui allez pas (manque de concentration )
merci beaucoup pour votre aide
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 10 mai 2008 à 15:58
çà arrive....
pense à valider la ou les réponses qui ont résolu ton problème (bouton "réponse acceptée!")
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 10 mai 2008 à 16:03
si je remet se meme code en effectuant quelque modification pour le combobox delegation ca doit marcher ?
Dim sBuffer As String
If InStrB(1, DC_GOUV, "TUN ") Then
sBuffer = Right$(DC_GOUV, Len(DC_ZI) - 3)
Else
sBuffer = Replace(DC_GOUV, " ", vbNullString)
End If
DC_ZI.Refresh
DC_ZI.RowMember = "deleg_" & LCase$(sBuffer)
DC_ZI.ListField = "nom_deleg"
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 10 mai 2008 à 17:09
normalement ont a choi dans DC_GOUV TUNIS, ARIANA, BEN AROUS ET MANOUBA
If InStrB(1, DC_GOUV, "TUN") Then sBuffer = Right$(DC_GOUV, Len(DC_ZI) - 3)
InStrB renvoie la position de l'octet alosr InStrB (debut,notre chaine caractere, a quoi on la compare)
bon j ai pas compris a quoi sert sBuffer exactement , mais ya "Right$" ( renvoi les caractere a partir droite,nbr de caractere qui seron renvoyer)
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 11 mai 2008 à 12:43
bonjour
Set Ct = New ADODB.Connection
Ct.Provider = "Microsoft.Jet.Oledb.4.0"
Ct.ConnectionString = App.Path & "\ZI.mdb"
Ct.Open
Set RcCombo = New ADODB.Recordset
RcCombo.Open "SELECT NOM_GOUV FROM GOUVERNORAT ORDER BY NOM_GOUV", Ct, adOpenDynamic
Combo1.Clear
Do Until RcCombo.EOF
Combo1.AddItem RcCombo!NOM_GOUV
Combo2.AddItem RcCombo!NOM_DELEG
RcCombo.MoveNext
voila mon code tt marche comme il faut mais le probleme que ici je remplis un seul combobox alors j ai besoin d en renplir 2
je veux ajouter une autre requette en plus de celle existante deja
j ai pense a ajoute une autre ligne au dessu RcCombo.open .... mais sa mmarche pas??
cs_ANOUCHKA8686
Messages postés29Date d'inscriptionjeudi 10 avril 2008StatutMembreDernière intervention25 mai 2008 13 mai 2008 à 19:31
bonjour
Set Ct = New ADODB.Connection
Ct.Provider = "Microsoft.Jet.Oledb.4.0"
Ct.ConnectionString = App.Path & "\ZI.mdb"
Ct.Open
'___________________________________DELEGATION
tmp = Combo4
Select Case tmp
Case "ARIANA"
sql = "select NOM_DELEG from DELEGATION where CODE_GOUV=12"
Case "TUNIS"
sql = "select NOM_DELEG from DELEGATION where CODE_GOUV=11"
Case "BEN AROUS"
sql = "select NOM_DELEG from DELEGATION where CODE_GOUV=13"
Case "MANOUBA"
sql = "select NOM_DELEG from DELEGATION where CODE_GOUV=14"
End Select
'*****************************************
Set RcCombo = New ADODB.Recordset
RcCombo.Open sql, , Ct, adOpenDynamic
Combo2.Clear
Do Until RcCombo.EOF
Combo2.AddItem RcCombo!NOM_DELEG
RcCombo.MoveNext
Loop
RcCombo.Close
'___________________________________GOUVERNORAT
Set RcCombo = New ADODB.Recordset
RcCombo.Open "SELECT NOM_GOUV FROM GOUVERNORAT ORDER BY NOM_GOUV", Ct, adOpenDynamic
Combo4.Clear
Do Until RcCombo.EOF
Combo4.AddItem RcCombo!NOM_GOUV
RcCombo.MoveNext
Loop
RcCombo.Close
voile mon code , bon avan de metre la boucle case tt marche comme sur des roulette
mais comme j avai besoin de filtre le contenu de mon conmbo j ai mit cette boucle
mais il me sort toujour le message ' type incompatible'