DeleteControl et ses mystères...

Le
Jean-Pierre
Tout d'abord, et surtout, tous mes voeux de longue vie à ce forum et à
tous ses participants et animateurs !!!

Voilà mon problème (Access-2000) :
Je voudrais effacer les contrôles d'un formulaire ("Truc"), avant d'en
recréer d'autres ; j'utilise le code suivant (exécuté pour les essais
depuis le bouton d'un autre formulaire) :

Dim Ctrl As Control
DoCmd.OpenForm "frm_Truc", acDesign, , , , acHidden

For Each Ctrl In Forms!frm_Truc.Controls
DeleteControl "frm_Truc", Ctrl.Name
Next Ctrl

Ce que je comprends pas, c'est qu'il n'efface pas tous les contrôles en
une seule fois ! Il en laisse toujours quelques-uns, je relance le code,
il en efface d'autres etc
J'y perds le peu de V.B.A. qui me reste.

Merci à vous,
Jean-Pierre
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Thierry (ze Titi)
Le #6341551
Bonjour Jean-Pierre et bonne année à toi !

Jean-Pierre a présenté l'énoncé suivant :
Tout d'abord, et surtout, tous mes voeux de longue vie à ce forum et à tous
ses participants et animateurs !!!

Voilà mon problème (Access-2000) :
Je voudrais effacer les contrôles d'un formulaire ("Truc"), avant d'en
recréer d'autres ; j'utilise le code suivant (exécuté pour les essais depuis
le bouton d'un autre formulaire) :

Dim Ctrl As Control
DoCmd.OpenForm "frm_Truc", acDesign, , , , acHidden

For Each Ctrl In Forms!frm_Truc.Controls
DeleteControl "frm_Truc", Ctrl.Name
Next Ctrl

Ce que je comprends pas, c'est qu'il n'efface pas tous les contrôles en une
seule fois ! Il en laisse toujours quelques-uns, je relance le code, il en
efface d'autres... etc...


Les contrôles restants, sont-ils toujours les mêmes ou bien est-ce
aléatoire ? S'ils sont toujours les mêmes, quels sont-ils ?

--
Cordialement,
Thierry

tout pour Access :
http://www.mpfa.info

Jean-Pierre
Le #6341531
Bonjour Jean-Pierre et bonne année à toi !

Jean-Pierre a présenté l'énoncé suivant :
Tout d'abord, et surtout, tous mes voeux de longue vie à ce forum et à
tous ses participants et animateurs !!!

Voilà mon problème (Access-2000) :
Je voudrais effacer les contrôles d'un formulaire ("Truc"), avant d'en
recréer d'autres ; j'utilise le code suivant (exécuté pour les essais
depuis le bouton d'un autre formulaire) :

Dim Ctrl As Control
DoCmd.OpenForm "frm_Truc", acDesign, , , , acHidden

For Each Ctrl In Forms!frm_Truc.Controls
DeleteControl "frm_Truc", Ctrl.Name
Next Ctrl

Ce que je comprends pas, c'est qu'il n'efface pas tous les contrôles
en une seule fois ! Il en laisse toujours quelques-uns, je relance le
code, il en efface d'autres... etc...


Les contrôles restants, sont-ils toujours les mêmes ou bien est-ce
aléatoire ? S'ils sont toujours les mêmes, quels sont-ils ?

Merci à toi Thierry pour ton intérêt.


L'effacement ne semble pas aléatoire : dans une ligne de contrôles, sont
effacés en premier ceux de rang impair (le premier, le troisième...),
puis toujours les contrôles de rang impair de ce qui reste... et ainsi
de suite...???!!!

Cordialement,
Jean-Pierre


Publicité
Poster une réponse
Anonyme