-----Message d'origine-----
Salut
Copies dans nouveau module
Function AjoutListeValeurChamp(table As String, Champ As
String , Liste as
string _
, Optional NomBase As String)
'Exemple de valeur liste : Liste = "'A';'B';'C';'D'"
'Nombase chemin complet de la base
On Error GoTo AjoutListeValeurChamp_Error
Dim bds As Database, CheminBase As String
Dim tdf As TableDef, fld As Field, chp As Field
Dim wrkJet As Workspace
If IsNull(NomBase) Or IsEmpty(NomBase) Or NomBase
= "" Then
CheminBase = CurrentDb.Name
Else
CheminBase = BaseEnCour() & NomBase
End If
Set wrkJet = CreateWorkspace("", "admin", "",
dbUseJet)
Set bds = wrkJet.OpenDatabase(CheminBase)
' Crée un nouvel objet TableDef.
Set tdf = bds.TableDefs(table)
Set chp = tdf.Fields(Champ)
Call DéfinirPropriété(chp, "RowSource", dbText, Liste)
Call DéfinirPropriété(chp, "LimitToList", dbBoolean,
True)
Fin:
bds.Close
wrkJet.Close
Set fld = Nothing
Set bds = Nothing
Set chp = Nothing
Set tdf = Nothing
Set wrkJet = Nothing
Exit Function
AjoutListeValeurChamp_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description
& ") in procedure
AjoutListeValeurChamp of Module Ajout Champ dans Table"
Resume Fin
End Function
Function DéfinirPropriété(obj As Object, _
chNom As String, entType As Integer, _
varSetting As Variant) As Boolean
On Error GoTo ErrorDéfinirPropriétéAccess
Dim prp As Property
Const conPropNotFound As Integer = 3270 'Prop non définie.
' Se réfère explicitement à la collection properties.
obj.Properties(chNom) = varSetting
obj.Properties.Refresh
DéfinirPropriété = True
SortieDéfinirPropriétéAccess:
Exit Function
ErrorDéfinirPropriétéAccess:
If Err = conPropNotFound Then
' Crée une propriété, précise le type et définit
une valeur
initiale.
Set prp = obj.CreateProperty(chNom, entType,
varSetting)
' Ajoute l'objet Property à la collection
Properties.
obj.Properties.Append prp
obj.Properties.Refresh
DéfinirPropriété = True
Resume SortieDéfinirPropriétéAccess
Else
MsgBox Err & ": " & Err.Number & vbCrLf &
Err.Description
DéfinirPropriété = False
Resume SortieDéfinirPropriétéAccess
End If
End Function
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"Kimai" a écrit dans le message de
news:036101c35ff9$2c875d30$
Merci pour ta réponse:
Je suis d'accord avec toi, cela simplifie lse choses. J'ai
fais cette manip lorsue je pense intéressant de créer une
table pour y entrer une liste.
Mais je voulais éviter de créer un table à chaque fois que
je voulais faire une liste déroulante.
On ne peut donc pas accéder à ce fichu rowsource de la
table ??
Merci de ta réponse !
A bientot peut-etre
Kimai-----Message d'origine-----
Salut
Au lieu de mettre une liste de valeur , mets une table
sur absence tu ajoutes l'element a la table
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:054c01c35ff3$04b8afd0$
Bonjour,
J'aimerais savoir comment modifier le rowsource d'une
table (en mode création pour un champ texte : zone de
liste modifiable, Origine source :"liste de valeurs" et
contenu "valeur1";"valeur2"; etc?) depuis un formulaire,
donc en VB
J'arrive très bien à utiliser la propriété Rowsource pour
modifier le contenu de la liste de mon formulaire avec
une
procédure évennementielle sur "Absence dans liste", mais
lorsque je ferme le formulaire, ce que j'avais ajouté à
ma
liste a disparu. Voila le code que j'utilise :
-------------------
Private Sub carac_particuliere_NotInList(NewData As
String, Response As Integer)
'Supprimer les messages d'informations d'ACCESS
DoCmd.SetWarnings False
Dim rep As Integer
rep = MsgBox("Cet élément n'existe pas dans la liste
déroulante. Voulez-vous l'ajouter ?", vbExclamation +
vbYesNo, "Elément pas dans la liste")
If rep = 6 Then
Response = acDataErrAdded
carac_particuliere.RowSource =
carac_particuliere.RowSource & ";" & NewData
Else
Response = acDataErrContinue
Me.carac_particuliere.Undo
End If
DoCmd.SetWarnings True
End Sub
-------------------
C'est pourquoi j'aimerais modifier la propriété Rowsource
de ma table, et non pas de ma liste du formulaire pour
que
cela soit définitif !
Si quelqu'un sait comment faire...
Merci d'avance
Kimai
.
.
-----Message d'origine-----
Salut
Copies dans nouveau module
Function AjoutListeValeurChamp(table As String, Champ As
String , Liste as
string _
, Optional NomBase As String)
'Exemple de valeur liste : Liste = "'A';'B';'C';'D'"
'Nombase chemin complet de la base
On Error GoTo AjoutListeValeurChamp_Error
Dim bds As Database, CheminBase As String
Dim tdf As TableDef, fld As Field, chp As Field
Dim wrkJet As Workspace
If IsNull(NomBase) Or IsEmpty(NomBase) Or NomBase
= "" Then
CheminBase = CurrentDb.Name
Else
CheminBase = BaseEnCour() & NomBase
End If
Set wrkJet = CreateWorkspace("", "admin", "",
dbUseJet)
Set bds = wrkJet.OpenDatabase(CheminBase)
' Crée un nouvel objet TableDef.
Set tdf = bds.TableDefs(table)
Set chp = tdf.Fields(Champ)
Call DéfinirPropriété(chp, "RowSource", dbText, Liste)
Call DéfinirPropriété(chp, "LimitToList", dbBoolean,
True)
Fin:
bds.Close
wrkJet.Close
Set fld = Nothing
Set bds = Nothing
Set chp = Nothing
Set tdf = Nothing
Set wrkJet = Nothing
Exit Function
AjoutListeValeurChamp_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description
& ") in procedure
AjoutListeValeurChamp of Module Ajout Champ dans Table"
Resume Fin
End Function
Function DéfinirPropriété(obj As Object, _
chNom As String, entType As Integer, _
varSetting As Variant) As Boolean
On Error GoTo ErrorDéfinirPropriétéAccess
Dim prp As Property
Const conPropNotFound As Integer = 3270 'Prop non définie.
' Se réfère explicitement à la collection properties.
obj.Properties(chNom) = varSetting
obj.Properties.Refresh
DéfinirPropriété = True
SortieDéfinirPropriétéAccess:
Exit Function
ErrorDéfinirPropriétéAccess:
If Err = conPropNotFound Then
' Crée une propriété, précise le type et définit
une valeur
initiale.
Set prp = obj.CreateProperty(chNom, entType,
varSetting)
' Ajoute l'objet Property à la collection
Properties.
obj.Properties.Append prp
obj.Properties.Refresh
DéfinirPropriété = True
Resume SortieDéfinirPropriétéAccess
Else
MsgBox Err & ": " & Err.Number & vbCrLf &
Err.Description
DéfinirPropriété = False
Resume SortieDéfinirPropriétéAccess
End If
End Function
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"Kimai" <kimai@caramail.com> a écrit dans le message de
news:036101c35ff9$2c875d30$a001280a@phx.gbl...
Merci pour ta réponse:
Je suis d'accord avec toi, cela simplifie lse choses. J'ai
fais cette manip lorsue je pense intéressant de créer une
table pour y entrer une liste.
Mais je voulais éviter de créer un table à chaque fois que
je voulais faire une liste déroulante.
On ne peut donc pas accéder à ce fichu rowsource de la
table ??
Merci de ta réponse !
A bientot peut-etre
Kimai
-----Message d'origine-----
Salut
Au lieu de mettre une liste de valeur , mets une table
sur absence tu ajoutes l'element a la table
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.com> a écrit dans le message de
news:054c01c35ff3$04b8afd0$a601280a@phx.gbl...
Bonjour,
J'aimerais savoir comment modifier le rowsource d'une
table (en mode création pour un champ texte : zone de
liste modifiable, Origine source :"liste de valeurs" et
contenu "valeur1";"valeur2"; etc?) depuis un formulaire,
donc en VB
J'arrive très bien à utiliser la propriété Rowsource pour
modifier le contenu de la liste de mon formulaire avec
une
procédure évennementielle sur "Absence dans liste", mais
lorsque je ferme le formulaire, ce que j'avais ajouté à
ma
liste a disparu. Voila le code que j'utilise :
-------------------
Private Sub carac_particuliere_NotInList(NewData As
String, Response As Integer)
'Supprimer les messages d'informations d'ACCESS
DoCmd.SetWarnings False
Dim rep As Integer
rep = MsgBox("Cet élément n'existe pas dans la liste
déroulante. Voulez-vous l'ajouter ?", vbExclamation +
vbYesNo, "Elément pas dans la liste")
If rep = 6 Then
Response = acDataErrAdded
carac_particuliere.RowSource =
carac_particuliere.RowSource & ";" & NewData
Else
Response = acDataErrContinue
Me.carac_particuliere.Undo
End If
DoCmd.SetWarnings True
End Sub
-------------------
C'est pourquoi j'aimerais modifier la propriété Rowsource
de ma table, et non pas de ma liste du formulaire pour
que
cela soit définitif !
Si quelqu'un sait comment faire...
Merci d'avance
Kimai
.
.
-----Message d'origine-----
Salut
Copies dans nouveau module
Function AjoutListeValeurChamp(table As String, Champ As
String , Liste as
string _
, Optional NomBase As String)
'Exemple de valeur liste : Liste = "'A';'B';'C';'D'"
'Nombase chemin complet de la base
On Error GoTo AjoutListeValeurChamp_Error
Dim bds As Database, CheminBase As String
Dim tdf As TableDef, fld As Field, chp As Field
Dim wrkJet As Workspace
If IsNull(NomBase) Or IsEmpty(NomBase) Or NomBase
= "" Then
CheminBase = CurrentDb.Name
Else
CheminBase = BaseEnCour() & NomBase
End If
Set wrkJet = CreateWorkspace("", "admin", "",
dbUseJet)
Set bds = wrkJet.OpenDatabase(CheminBase)
' Crée un nouvel objet TableDef.
Set tdf = bds.TableDefs(table)
Set chp = tdf.Fields(Champ)
Call DéfinirPropriété(chp, "RowSource", dbText, Liste)
Call DéfinirPropriété(chp, "LimitToList", dbBoolean,
True)
Fin:
bds.Close
wrkJet.Close
Set fld = Nothing
Set bds = Nothing
Set chp = Nothing
Set tdf = Nothing
Set wrkJet = Nothing
Exit Function
AjoutListeValeurChamp_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description
& ") in procedure
AjoutListeValeurChamp of Module Ajout Champ dans Table"
Resume Fin
End Function
Function DéfinirPropriété(obj As Object, _
chNom As String, entType As Integer, _
varSetting As Variant) As Boolean
On Error GoTo ErrorDéfinirPropriétéAccess
Dim prp As Property
Const conPropNotFound As Integer = 3270 'Prop non définie.
' Se réfère explicitement à la collection properties.
obj.Properties(chNom) = varSetting
obj.Properties.Refresh
DéfinirPropriété = True
SortieDéfinirPropriétéAccess:
Exit Function
ErrorDéfinirPropriétéAccess:
If Err = conPropNotFound Then
' Crée une propriété, précise le type et définit
une valeur
initiale.
Set prp = obj.CreateProperty(chNom, entType,
varSetting)
' Ajoute l'objet Property à la collection
Properties.
obj.Properties.Append prp
obj.Properties.Refresh
DéfinirPropriété = True
Resume SortieDéfinirPropriétéAccess
Else
MsgBox Err & ": " & Err.Number & vbCrLf &
Err.Description
DéfinirPropriété = False
Resume SortieDéfinirPropriétéAccess
End If
End Function
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"Kimai" a écrit dans le message de
news:036101c35ff9$2c875d30$
Merci pour ta réponse:
Je suis d'accord avec toi, cela simplifie lse choses. J'ai
fais cette manip lorsue je pense intéressant de créer une
table pour y entrer une liste.
Mais je voulais éviter de créer un table à chaque fois que
je voulais faire une liste déroulante.
On ne peut donc pas accéder à ce fichu rowsource de la
table ??
Merci de ta réponse !
A bientot peut-etre
Kimai-----Message d'origine-----
Salut
Au lieu de mettre une liste de valeur , mets une table
sur absence tu ajoutes l'element a la table
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:054c01c35ff3$04b8afd0$
Bonjour,
J'aimerais savoir comment modifier le rowsource d'une
table (en mode création pour un champ texte : zone de
liste modifiable, Origine source :"liste de valeurs" et
contenu "valeur1";"valeur2"; etc?) depuis un formulaire,
donc en VB
J'arrive très bien à utiliser la propriété Rowsource pour
modifier le contenu de la liste de mon formulaire avec
une
procédure évennementielle sur "Absence dans liste", mais
lorsque je ferme le formulaire, ce que j'avais ajouté à
ma
liste a disparu. Voila le code que j'utilise :
-------------------
Private Sub carac_particuliere_NotInList(NewData As
String, Response As Integer)
'Supprimer les messages d'informations d'ACCESS
DoCmd.SetWarnings False
Dim rep As Integer
rep = MsgBox("Cet élément n'existe pas dans la liste
déroulante. Voulez-vous l'ajouter ?", vbExclamation +
vbYesNo, "Elément pas dans la liste")
If rep = 6 Then
Response = acDataErrAdded
carac_particuliere.RowSource =
carac_particuliere.RowSource & ";" & NewData
Else
Response = acDataErrContinue
Me.carac_particuliere.Undo
End If
DoCmd.SetWarnings True
End Sub
-------------------
C'est pourquoi j'aimerais modifier la propriété Rowsource
de ma table, et non pas de ma liste du formulaire pour
que
cela soit définitif !
Si quelqu'un sait comment faire...
Merci d'avance
Kimai
.
.
-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)
On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +
vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrement
erreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque j'ajoute
un élément qui n'est pas dans la liste, le rowsource de la
table a bien été changé. (je n'utilise plus l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)
On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +
vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrement
erreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.com> a écrit dans le message de
news:00d201c36021$a84e5900$a301280a@phx.gbl...
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque j'ajoute
un élément qui n'est pas dans la liste, le rowsource de la
table a bien été changé. (je n'utilise plus l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)
On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +
vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrement
erreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque j'ajoute
un élément qui n'est pas dans la liste, le rowsource de la
table a bien été changé. (je n'utilise plus l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:02b401c3602c$4922c9b0$
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...
il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrementerreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajoute
un élément qui n'est pas dans la liste, le rowsource de
la
table a bien été changé. (je n'utilise plus
l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.ocm> a écrit dans le message de
news:02b401c3602c$4922c9b0$a101280a@phx.gbl...
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...
il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai
-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)
On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +
vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrement
erreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.com> a écrit dans le message de
news:00d201c36021$a84e5900$a301280a@phx.gbl...
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajoute
un élément qui n'est pas dans la liste, le rowsource de
la
table a bien été changé. (je n'utilise plus
l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:02b401c3602c$4922c9b0$
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...
il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrementerreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajoute
un élément qui n'est pas dans la liste, le rowsource de
la
table a bien été changé. (je n'utilise plus
l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:02b401c3602c$4922c9b0$
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...
il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrementerreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajoute
un élément qui n'est pas dans la liste, le rowsource de
la
table a bien été changé. (je n'utilise plus
l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.ocm> a écrit dans le message de
news:02b401c3602c$4922c9b0$a101280a@phx.gbl...
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...
il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai
-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)
On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +
vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrement
erreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.com> a écrit dans le message de
news:00d201c36021$a84e5900$a301280a@phx.gbl...
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajoute
un élément qui n'est pas dans la liste, le rowsource de
la
table a bien été changé. (je n'utilise plus
l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:02b401c3602c$4922c9b0$
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...
il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrementerreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajoute
un élément qui n'est pas dans la liste, le rowsource de
la
table a bien été changé. (je n'utilise plus
l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulante
de mon formulaire : Comment faire pour que cette liste me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
-----Message d'origine-----
Salut
Ok je regarde ca en debut d'apres midi
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:097c01c360ac$a62686d0$
Salut,
Je t'ai envoyé un mail avec la base et toutes les
explications nécessaires
Merci encore pour ton aide précieuse
kimai-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:02b401c3602c$4922c9b0$
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé
tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une
décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrementerreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon
formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajouteun élément qui n'est pas dans la liste, le rowsource de
latable a bien été changé. (je n'utilise plus
l'ex "'A';'B'"mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulantede mon formulaire : Comment faire pour que cette liste
me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
.
-----Message d'origine-----
Salut
Ok je regarde ca en debut d'apres midi
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.com> a écrit dans le message de
news:097c01c360ac$a62686d0$a601280a@phx.gbl...
Salut,
Je t'ai envoyé un mail avec la base et toutes les
explications nécessaires
Merci encore pour ton aide précieuse
kimai
-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.ocm> a écrit dans le message de
news:02b401c3602c$4922c9b0$a101280a@phx.gbl...
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...
il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé
tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une
décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai
-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)
On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +
vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrement
erreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" <kimai@caramail.com> a écrit dans le message de
news:00d201c36021$a84e5900$a301280a@phx.gbl...
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon
formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajoute
un élément qui n'est pas dans la liste, le rowsource de
la
table a bien été changé. (je n'utilise plus
l'ex "'A';'B'"
mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulante
de mon formulaire : Comment faire pour que cette liste
me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
.
-----Message d'origine-----
Salut
Ok je regarde ca en debut d'apres midi
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pour
Access
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:097c01c360ac$a62686d0$
Salut,
Je t'ai envoyé un mail avec la base et toutes les
explications nécessaires
Merci encore pour ton aide précieuse
kimai-----Message d'origine-----
Salut
envoies moi le formulaire et la ou les tables
anisi que les modules
Il ne sera pas dit que l'on a pas essaye
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:02b401c3602c$4922c9b0$
Salut,
J'ai essayé avec le code que tu m'as envoyé, sans
succès...il faudrait que je puisse écrire quelque chose du type :
"rowsource de la liste du formulaire" = "rowsource de la
liste de la table"
Je sais faire pour le formulaire : c'est Me!
[PDM].rowsource = "truc"
Et je ne sais pas faire pour la table. Je devrais pouvoir
le trouver dans ton code, puisque celui ci modifie le
rowsource de la table, mais je n'y arrive pas (il y a
beaucoup d'intermédiaire pour arriver à
obj.propertie.quelque_chose....
Il y a une autre solution : celle que j'avais essayé
tout
au début, cad tout simplement: (après un msgbox)
PDM.RowSource = PDM.RowSource & ";" & NewData
Cela evite de trafique la table elle-même (on ne touche
qu'a la liste du formaulaire) et cela fonctionne très
bien : apresvalidation de la boite de dialogue, il y a un
nouvel élément dans la liste. MAIS
Le seul GROS pbm ,c'est que lorsqu'on ferme et qu'on ré-
ouvre le formulaire, ce nouvel élément a disparu !!!!
Comment le sauvegarder ???
Merci encore pour toutes tes réponses.
Si cela t'embête trop, dis moi et je prendrai une
décision
draconienne : permettre simplement l'ajout sans enrichir
la liste...
A +
Kimai-----Message d'origine-----
Salut
Private Sub Pdm_NotInList(NewData As String, Response As
Integer)On Error GoTo erreur
Dim mdb As Database, strSQL As String, Reponse As
Integer,liste as string
'Efface la valeur entree dans la liste modifiable
DoCmd.DoMenuItem A_FORMBAR, A_EDIT, A_UNDOFIELD, ,
A_MENU_VER20
'Si on fait entree avec la zone modifiable vide
If NewData = "" Then Exit Sub
'Message choix creation article
Reponse = MsgBox("Voulez vous ajouter cet article : " &
NewData, vbYesNo +vbQuestion, "Ajout article")
If Reponse = vbYes Then
liste = me.PDM.RowSource & ";" & NewData
Call AjoutListeValeurChamp("T_diagnostic","PDM",Liste)
Response = acDataErrAdded
End If
'ACTUALISE LA LISTE avec la nouvelle valeur
Me.Requery
Exit Sub
'Gere l'erreur si on repond non a l'ajout de
l'enregistrementerreur:
Response = acDataErrContinue
End Sub
--
@+
André
Quelques liens avec des exemples, des utilitaires et des
compléments pourAccess
http://access.seneque.free.fr/
http://www.self-access.com/
http://www.mvps.org/accessfr/
http://mypage.bluewin.ch/w.stucki/
http://access.jessy.free.fr/
"kimai" a écrit dans le message de
news:00d201c36021$a84e5900$
Helloo
J'ai fais ce que tu m'as dit, cad que j'ai copié toutes
les fonctions dans le module de classe de mon
formulaire.
Tout fonctionne comme sur des roulettes : lorsque
j'ajouteun élément qui n'est pas dans la liste, le rowsource de
latable a bien été changé. (je n'utilise plus
l'ex "'A';'B'"mais liste = PDM.RowSource & ";" & NewData)
Par contre, il me reste à réactualiser ma liste
déroulantede mon formulaire : Comment faire pour que cette liste
me
renvoie les valeurs écrite dans la définition de la
table ?
J'ai essayé un Me![PDM].Requery sans succes
Merci encore !!!
On y est presque !!!!
kimai
.
.
.