Bonsoir à tous,
Voici mon pb :
J'ai une bdd qui contient plus d'une centaine de formulaires dont je voudrais modifier la couleur de fond de toutes les sections qu'ils contiennent.
Evidemment, tous ne contiennent pas d'en-tête/pied-de-formulaire visibles. Donc à partir du formulaire1, je lance la procédure suivante (j'en ai essayé d'autres...) :
Dim db As Object
Dim frm As AccessObject
'Dim ctrl As AccessObject
Set db = Application.CurrentProject
For Each frm In db.AllForms
If Not (frm.Name = "formulaire1") Then
DoCmd.OpenForm frm.Name, acDesign, , , , acHidden
'Debug.Print frm.Name
Forms(strName).Section(acDetail).BackColor = -2147483633
Forms(strName).Section(acHeader).BackColor = -2147483633
Forms(strName).Section(acFooter).BackColor = -2147483633
DoCmd.Close acForm, frm.Name, acSaveYes
End If
Next frm
Dès que la proc rencontre un frm qui n'a pas d'en-tête visible, elle me renvoie un message brut sans code d'erreur récupérable "Numéro de section invalide" et plante. J'ai essayé des tas de feintes, mais rien n'y fait : dans tous les cas il faudrait que je puisse lire et modifier la propriété Visible des en-têtes pour pouvoir mettre une boucle conditionnelle et éviter le pb, mais celle-ci semble inaccessible ou au minimum en lecture seule dans VB.
Quelqu'un aurait-il une piste ou dois-je le faire obligatoirement "à la main" ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonsoir.
il faudrait mettre un on error resume next pour passer sur l'erreur directement sans la traiter.
On Error Resume Next For Each frm In db.AllForms
il y a plusieurs lignes qui semblent bizarres, notamment ce genre : Forms(strName)...., je pense qu'il y a d'autres lignes mais qu'elles ont été enlevées ?
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c03jn1$2qn$
Bonsoir à tous, Voici mon pb : J'ai une bdd qui contient plus d'une centaine de formulaires dont je voudrais modifier la couleur de fond de toutes les sections qu'ils
contiennent.
Evidemment, tous ne contiennent pas d'en-tête/pied-de-formulaire visibles. Donc à partir du formulaire1, je lance la procédure suivante (j'en ai essayé
d'autres...) :
Dim db As Object Dim frm As AccessObject 'Dim ctrl As AccessObject Set db = Application.CurrentProject
For Each frm In db.AllForms If Not (frm.Name = "formulaire1") Then DoCmd.OpenForm frm.Name, acDesign, , , , acHidden 'Debug.Print frm.Name Forms(strName).Section(acDetail).BackColor = -2147483633 Forms(strName).Section(acHeader).BackColor = -2147483633 Forms(strName).Section(acFooter).BackColor = -2147483633 DoCmd.Close acForm, frm.Name, acSaveYes End If Next frm
Dès que la proc rencontre un frm qui n'a pas d'en-tête visible, elle me renvoie un message brut sans code d'erreur récupérable "Numéro de section
invalide" et plante. J'ai essayé des tas de feintes, mais rien n'y fait : dans tous les cas il faudrait que je puisse lire et modifier la propriété Visible des en-têtes pour pouvoir mettre une boucle conditionnelle et éviter le pb, mais celle-ci semble inaccessible ou au minimum en lecture seule dans VB.
Quelqu'un aurait-il une piste ou dois-je le faire obligatoirement "à la main" ?
Merci, @+ JP
Bonsoir.
il faudrait mettre un on error resume next pour passer sur l'erreur
directement sans la traiter.
On Error Resume Next
For Each frm In db.AllForms
il y a plusieurs lignes qui semblent bizarres, notamment ce genre :
Forms(strName)...., je pense qu'il y a d'autres lignes mais qu'elles ont été
enlevées ?
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" <attac.jp@wanadoo.fr> a écrit dans le message de
news:c03jn1$2qn$1@news-reader1.wanadoo.fr...
Bonsoir à tous,
Voici mon pb :
J'ai une bdd qui contient plus d'une centaine de formulaires dont je
voudrais modifier la couleur de fond de toutes les sections qu'ils
contiennent.
Evidemment, tous ne contiennent pas d'en-tête/pied-de-formulaire visibles.
Donc à partir du formulaire1, je lance la procédure suivante (j'en ai essayé
d'autres...) :
Dim db As Object
Dim frm As AccessObject
'Dim ctrl As AccessObject
Set db = Application.CurrentProject
For Each frm In db.AllForms
If Not (frm.Name = "formulaire1") Then
DoCmd.OpenForm frm.Name, acDesign, , , , acHidden
'Debug.Print frm.Name
Forms(strName).Section(acDetail).BackColor = -2147483633
Forms(strName).Section(acHeader).BackColor = -2147483633
Forms(strName).Section(acFooter).BackColor = -2147483633
DoCmd.Close acForm, frm.Name, acSaveYes
End If
Next frm
Dès que la proc rencontre un frm qui n'a pas d'en-tête visible, elle me
renvoie un message brut sans code d'erreur récupérable "Numéro de section
invalide" et plante. J'ai essayé des tas de feintes, mais rien n'y fait :
dans tous les cas il faudrait que je puisse lire et modifier la propriété
Visible des en-têtes pour pouvoir mettre une boucle conditionnelle et éviter
le pb, mais celle-ci semble inaccessible ou au minimum en lecture seule dans
VB.
Quelqu'un aurait-il une piste ou dois-je le faire obligatoirement "à la
main" ?
il faudrait mettre un on error resume next pour passer sur l'erreur directement sans la traiter.
On Error Resume Next For Each frm In db.AllForms
il y a plusieurs lignes qui semblent bizarres, notamment ce genre : Forms(strName)...., je pense qu'il y a d'autres lignes mais qu'elles ont été enlevées ?
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c03jn1$2qn$
Bonsoir à tous, Voici mon pb : J'ai une bdd qui contient plus d'une centaine de formulaires dont je voudrais modifier la couleur de fond de toutes les sections qu'ils
contiennent.
Evidemment, tous ne contiennent pas d'en-tête/pied-de-formulaire visibles. Donc à partir du formulaire1, je lance la procédure suivante (j'en ai essayé
d'autres...) :
Dim db As Object Dim frm As AccessObject 'Dim ctrl As AccessObject Set db = Application.CurrentProject
For Each frm In db.AllForms If Not (frm.Name = "formulaire1") Then DoCmd.OpenForm frm.Name, acDesign, , , , acHidden 'Debug.Print frm.Name Forms(strName).Section(acDetail).BackColor = -2147483633 Forms(strName).Section(acHeader).BackColor = -2147483633 Forms(strName).Section(acFooter).BackColor = -2147483633 DoCmd.Close acForm, frm.Name, acSaveYes End If Next frm
Dès que la proc rencontre un frm qui n'a pas d'en-tête visible, elle me renvoie un message brut sans code d'erreur récupérable "Numéro de section
invalide" et plante. J'ai essayé des tas de feintes, mais rien n'y fait : dans tous les cas il faudrait que je puisse lire et modifier la propriété Visible des en-têtes pour pouvoir mettre une boucle conditionnelle et éviter le pb, mais celle-ci semble inaccessible ou au minimum en lecture seule dans VB.
Quelqu'un aurait-il une piste ou dois-je le faire obligatoirement "à la main" ?
Merci, @+ JP
jipé
Merci Raymond pour ta réponse, Effectivement, il manque des lignes, dont la déclaration de strName (=Frm.Name)...mais tu as rectifié de toi-même ! Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce cas, la proc va à son terme sans modifier les frm qui ne contiennent pas d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs pas si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il lui est assigné la valeur "Null" dans l'objet frm lors de sa création (rien trouvé dans la doc ou les forums à ce sujet). Donc, retour à la case départ... @+ JP
"Raymond [mvp]" a écrit dans le message news: uxozq$
Bonsoir.
il faudrait mettre un on error resume next pour passer sur l'erreur directement sans la traiter.
On Error Resume Next For Each frm In db.AllForms
il y a plusieurs lignes qui semblent bizarres, notamment ce genre : Forms(strName)...., je pense qu'il y a d'autres lignes mais qu'elles ont été
enlevées ?
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c03jn1$2qn$
Bonsoir à tous, Voici mon pb : J'ai une bdd qui contient plus d'une centaine de formulaires dont je voudrais modifier la couleur de fond de toutes les sections qu'ils
contiennent.
Evidemment, tous ne contiennent pas d'en-tête/pied-de-formulaire visibles.
Donc à partir du formulaire1, je lance la procédure suivante (j'en ai essayé
d'autres...) :
Dim db As Object Dim frm As AccessObject 'Dim ctrl As AccessObject Set db = Application.CurrentProject
For Each frm In db.AllForms If Not (frm.Name = "formulaire1") Then DoCmd.OpenForm frm.Name, acDesign, , , , acHidden 'Debug.Print frm.Name Forms(strName).Section(acDetail).BackColor = -2147483633 Forms(strName).Section(acHeader).BackColor = -2147483633 Forms(strName).Section(acFooter).BackColor = -2147483633 DoCmd.Close acForm, frm.Name, acSaveYes End If Next frm
Dès que la proc rencontre un frm qui n'a pas d'en-tête visible, elle me renvoie un message brut sans code d'erreur récupérable "Numéro de section
invalide" et plante. J'ai essayé des tas de feintes, mais rien n'y fait : dans tous les cas il faudrait que je puisse lire et modifier la propriété Visible des en-têtes pour pouvoir mettre une boucle conditionnelle et éviter
le pb, mais celle-ci semble inaccessible ou au minimum en lecture seule dans
VB.
Quelqu'un aurait-il une piste ou dois-je le faire obligatoirement "à la main" ?
Merci, @+ JP
Merci Raymond pour ta réponse,
Effectivement, il manque des lignes, dont la déclaration de strName
(=Frm.Name)...mais tu as rectifié de toi-même !
Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce
cas, la proc va à son terme sans modifier les frm qui ne contiennent pas
d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs pas
si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il lui
est assigné la valeur "Null" dans l'objet frm lors de sa création (rien
trouvé dans la doc ou les forums à ce sujet).
Donc, retour à la case départ...
@+
JP
"Raymond [mvp]" <XYZ.access.seneque@free.fr> a écrit dans le message news:
uxozq$b7DHA.2404@TK2MSFTNGP11.phx.gbl...
Bonsoir.
il faudrait mettre un on error resume next pour passer sur l'erreur
directement sans la traiter.
On Error Resume Next
For Each frm In db.AllForms
il y a plusieurs lignes qui semblent bizarres, notamment ce genre :
Forms(strName)...., je pense qu'il y a d'autres lignes mais qu'elles ont
été
enlevées ?
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" <attac.jp@wanadoo.fr> a écrit dans le message de
news:c03jn1$2qn$1@news-reader1.wanadoo.fr...
Bonsoir à tous,
Voici mon pb :
J'ai une bdd qui contient plus d'une centaine de formulaires dont je
voudrais modifier la couleur de fond de toutes les sections qu'ils
contiennent.
Evidemment, tous ne contiennent pas d'en-tête/pied-de-formulaire
visibles.
Donc à partir du formulaire1, je lance la procédure suivante (j'en ai
essayé
d'autres...) :
Dim db As Object
Dim frm As AccessObject
'Dim ctrl As AccessObject
Set db = Application.CurrentProject
For Each frm In db.AllForms
If Not (frm.Name = "formulaire1") Then
DoCmd.OpenForm frm.Name, acDesign, , , , acHidden
'Debug.Print frm.Name
Forms(strName).Section(acDetail).BackColor = -2147483633
Forms(strName).Section(acHeader).BackColor = -2147483633
Forms(strName).Section(acFooter).BackColor = -2147483633
DoCmd.Close acForm, frm.Name, acSaveYes
End If
Next frm
Dès que la proc rencontre un frm qui n'a pas d'en-tête visible, elle me
renvoie un message brut sans code d'erreur récupérable "Numéro de section
invalide" et plante. J'ai essayé des tas de feintes, mais rien n'y fait :
dans tous les cas il faudrait que je puisse lire et modifier la propriété
Visible des en-têtes pour pouvoir mettre une boucle conditionnelle et
éviter
le pb, mais celle-ci semble inaccessible ou au minimum en lecture seule
dans
VB.
Quelqu'un aurait-il une piste ou dois-je le faire obligatoirement "à la
main" ?
Merci Raymond pour ta réponse, Effectivement, il manque des lignes, dont la déclaration de strName (=Frm.Name)...mais tu as rectifié de toi-même ! Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce cas, la proc va à son terme sans modifier les frm qui ne contiennent pas d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs pas si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il lui est assigné la valeur "Null" dans l'objet frm lors de sa création (rien trouvé dans la doc ou les forums à ce sujet). Donc, retour à la case départ... @+ JP
"Raymond [mvp]" a écrit dans le message news: uxozq$
Bonsoir.
il faudrait mettre un on error resume next pour passer sur l'erreur directement sans la traiter.
On Error Resume Next For Each frm In db.AllForms
il y a plusieurs lignes qui semblent bizarres, notamment ce genre : Forms(strName)...., je pense qu'il y a d'autres lignes mais qu'elles ont été
enlevées ?
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c03jn1$2qn$
Bonsoir à tous, Voici mon pb : J'ai une bdd qui contient plus d'une centaine de formulaires dont je voudrais modifier la couleur de fond de toutes les sections qu'ils
contiennent.
Evidemment, tous ne contiennent pas d'en-tête/pied-de-formulaire visibles.
Donc à partir du formulaire1, je lance la procédure suivante (j'en ai essayé
d'autres...) :
Dim db As Object Dim frm As AccessObject 'Dim ctrl As AccessObject Set db = Application.CurrentProject
For Each frm In db.AllForms If Not (frm.Name = "formulaire1") Then DoCmd.OpenForm frm.Name, acDesign, , , , acHidden 'Debug.Print frm.Name Forms(strName).Section(acDetail).BackColor = -2147483633 Forms(strName).Section(acHeader).BackColor = -2147483633 Forms(strName).Section(acFooter).BackColor = -2147483633 DoCmd.Close acForm, frm.Name, acSaveYes End If Next frm
Dès que la proc rencontre un frm qui n'a pas d'en-tête visible, elle me renvoie un message brut sans code d'erreur récupérable "Numéro de section
invalide" et plante. J'ai essayé des tas de feintes, mais rien n'y fait : dans tous les cas il faudrait que je puisse lire et modifier la propriété Visible des en-têtes pour pouvoir mettre une boucle conditionnelle et éviter
le pb, mais celle-ci semble inaccessible ou au minimum en lecture seule dans
VB.
Quelqu'un aurait-il une piste ou dois-je le faire obligatoirement "à la main" ?
Merci, @+ JP
Raymond [mvp]
je viens de tester cette procédure et la section détail est bien mise en rouge en l'absence d'entête de formulaire, et le formulaire bien sauvegardé. DoCmd.OpenForm "formulaire1", acDesign, , , , acHidden On Error Resume Next Forms("formulaire1").Section(acFooter).BackColor = 255 Forms("formulaire1").Section(acDetail).BackColor = 255 DoCmd.Close acForm, "formulaire1", acSaveYes
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c05ro7$6im$
Merci Raymond pour ta réponse, Effectivement, il manque des lignes, dont la déclaration de strName (=Frm.Name)...mais tu as rectifié de toi-même ! Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce cas, la proc va à son terme sans modifier les frm qui ne contiennent pas d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs pas
si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il lui
est assigné la valeur "Null" dans l'objet frm lors de sa création (rien trouvé dans la doc ou les forums à ce sujet). Donc, retour à la case départ... @+ JP
je viens de tester cette procédure et la section détail est bien mise en
rouge en l'absence d'entête de formulaire, et le formulaire bien sauvegardé.
DoCmd.OpenForm "formulaire1", acDesign, , , , acHidden
On Error Resume Next
Forms("formulaire1").Section(acFooter).BackColor = 255
Forms("formulaire1").Section(acDetail).BackColor = 255
DoCmd.Close acForm, "formulaire1", acSaveYes
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" <attac.jp@wanadoo.fr> a écrit dans le message de
news:c05ro7$6im$1@news-reader4.wanadoo.fr...
Merci Raymond pour ta réponse,
Effectivement, il manque des lignes, dont la déclaration de strName
(=Frm.Name)...mais tu as rectifié de toi-même !
Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce
cas, la proc va à son terme sans modifier les frm qui ne contiennent pas
d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs
pas
si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il
lui
est assigné la valeur "Null" dans l'objet frm lors de sa création (rien
trouvé dans la doc ou les forums à ce sujet).
Donc, retour à la case départ...
@+
JP
je viens de tester cette procédure et la section détail est bien mise en rouge en l'absence d'entête de formulaire, et le formulaire bien sauvegardé. DoCmd.OpenForm "formulaire1", acDesign, , , , acHidden On Error Resume Next Forms("formulaire1").Section(acFooter).BackColor = 255 Forms("formulaire1").Section(acDetail).BackColor = 255 DoCmd.Close acForm, "formulaire1", acSaveYes
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c05ro7$6im$
Merci Raymond pour ta réponse, Effectivement, il manque des lignes, dont la déclaration de strName (=Frm.Name)...mais tu as rectifié de toi-même ! Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce cas, la proc va à son terme sans modifier les frm qui ne contiennent pas d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs pas
si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il lui
est assigné la valeur "Null" dans l'objet frm lors de sa création (rien trouvé dans la doc ou les forums à ce sujet). Donc, retour à la case départ... @+ JP
jipé
Salut Raymond, J'avais mal vérifié. En fait, la proc incluait d'autres modif et certaines faisaient également planter, si bien qu'à la fin, je ne savais plus trop par quel bout prendre le truc. Voilà, je me suis cru malin, j'ai pas voulu décomposer les modifs à effectuer et j'ai perdu des heures à bidouiller..! Donc, effectivement, ça marche avec "resume next". Merci de t'être penché sur ce pb. @+ JP
"Raymond [mvp]" a écrit dans le message news: #76KU#
je viens de tester cette procédure et la section détail est bien mise en rouge en l'absence d'entête de formulaire, et le formulaire bien sauvegardé.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c05ro7$6im$
Merci Raymond pour ta réponse, Effectivement, il manque des lignes, dont la déclaration de strName (=Frm.Name)...mais tu as rectifié de toi-même ! Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce cas, la proc va à son terme sans modifier les frm qui ne contiennent pas d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs pas
si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il lui
est assigné la valeur "Null" dans l'objet frm lors de sa création (rien trouvé dans la doc ou les forums à ce sujet). Donc, retour à la case départ... @+ JP
Salut Raymond,
J'avais mal vérifié. En fait, la proc incluait d'autres modif et certaines
faisaient également planter, si bien qu'à la fin, je ne savais plus trop par
quel bout prendre le truc. Voilà, je me suis cru malin, j'ai pas voulu
décomposer les modifs à effectuer et j'ai perdu des heures à bidouiller..!
Donc, effectivement, ça marche avec "resume next". Merci de t'être penché
sur ce pb.
@+
JP
"Raymond [mvp]" <XYZ.access.seneque@free.fr> a écrit dans le message news:
#76KU#m7DHA.1504@TK2MSFTNGP12.phx.gbl...
je viens de tester cette procédure et la section détail est bien mise en
rouge en l'absence d'entête de formulaire, et le formulaire bien
sauvegardé.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" <attac.jp@wanadoo.fr> a écrit dans le message de
news:c05ro7$6im$1@news-reader4.wanadoo.fr...
Merci Raymond pour ta réponse,
Effectivement, il manque des lignes, dont la déclaration de strName
(=Frm.Name)...mais tu as rectifié de toi-même !
Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce
cas, la proc va à son terme sans modifier les frm qui ne contiennent pas
d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs
pas
si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il
lui
est assigné la valeur "Null" dans l'objet frm lors de sa création (rien
trouvé dans la doc ou les forums à ce sujet).
Donc, retour à la case départ...
@+
JP
Salut Raymond, J'avais mal vérifié. En fait, la proc incluait d'autres modif et certaines faisaient également planter, si bien qu'à la fin, je ne savais plus trop par quel bout prendre le truc. Voilà, je me suis cru malin, j'ai pas voulu décomposer les modifs à effectuer et j'ai perdu des heures à bidouiller..! Donc, effectivement, ça marche avec "resume next". Merci de t'être penché sur ce pb. @+ JP
"Raymond [mvp]" a écrit dans le message news: #76KU#
je viens de tester cette procédure et la section détail est bien mise en rouge en l'absence d'entête de formulaire, et le formulaire bien sauvegardé.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"jipé" a écrit dans le message de news:c05ro7$6im$
Merci Raymond pour ta réponse, Effectivement, il manque des lignes, dont la déclaration de strName (=Frm.Name)...mais tu as rectifié de toi-même ! Cela dit, j'ai déjà essayé l'interception avec Resume Next, mais dans ce cas, la proc va à son terme sans modifier les frm qui ne contiennent pas d'en-tête visible, et ils sont majoritaires. D'ailleurs, je ne sais tjs pas
si cette section en-tête est simplement "cachée" (visibleúlse) ou s'il lui
est assigné la valeur "Null" dans l'objet frm lors de sa création (rien trouvé dans la doc ou les forums à ce sujet). Donc, retour à la case départ... @+ JP