[ACCESS] - Erreur création controle dynamique
Fan-A-Tik
-
Fan-A-Tik -
Fan-A-Tik -
Bonjour,
Je suis débutant en VBA et je travaille actuellement sur la création de contrôles (de manière dynamique) sur un formulaire existant.
Pour schématiser un peu j'ai deux formulaires et un module.
1 - je récupère des informations via le formulaire 1 (exemple : un nombre d'années)
2 - j'éxecute une procédure du module qui va ouvrir le formulaire 2 en mode Design, y créer des Labels et Textbox en fonction des information récupérées dans le formulaire 1 (pour chaque année, une colonne avec X Labels et Y TextBox ) puis refermer le formulaire 2
3 - je ferme le formulaire 1 et ouvre le formulaire 2
(j'espère que jusque là vous m'avez compris ^^)
Jusqu'à avant hier ça fonctionnait, mais sans que je comprenne pourquoi, maintenant ça ne marche plus (je ne me rappelle pas avoir modifié quelque chose, même si ça a du être le cas)...
J'ai eu 2 types d'erreur :
1 - "Erreur 7 (si je me rappelle bien) : mémoire insuffisante" (par exemple lorsque je souhaitais lire une propriété d'un des controles, Form_Formulaire.txt_annee.Name)
->Pour "corriger" j'ai du recopier mon formulaire dans un autre, supprimer le premier puis renommer le second comme le premier. C'est de la grosse bidouille mais après redémarrer ACCESS, puis le PC et avoir pas mal cherché, je voyais rien d'autre.
2 - "Erreur 29054 : Microsoft Access ne peut pas ajouter, renommer ou supprimer le(s) contrôle(s) sélectionné(s)"...... et ça dès que je crée un nouveau controle (à la ligne CreateControl).
Voici le code que j'utilise pour créer mes controles (à partir du module):
Pour les personnes qui me diront de tape F1 ou d'aller voir ici :
https://access.developpez.com/faq/?pa#formdynamique
https://access.developpez.com/faq/?pa...rm#AddRectForm
https://access.developpez.com/faq/?pa...reeDynCtrlCode
c'est déjà fait....
J'aimerai donc (si possible) un p'tit coup de pouce pour résoudre ma deuxième erreur (et potentiellement comprendre d'où vient la première et si elle peut se reproduire...)
Merci d'avance!
Fan-A-Tik
Je suis débutant en VBA et je travaille actuellement sur la création de contrôles (de manière dynamique) sur un formulaire existant.
Pour schématiser un peu j'ai deux formulaires et un module.
1 - je récupère des informations via le formulaire 1 (exemple : un nombre d'années)
2 - j'éxecute une procédure du module qui va ouvrir le formulaire 2 en mode Design, y créer des Labels et Textbox en fonction des information récupérées dans le formulaire 1 (pour chaque année, une colonne avec X Labels et Y TextBox ) puis refermer le formulaire 2
3 - je ferme le formulaire 1 et ouvre le formulaire 2
(j'espère que jusque là vous m'avez compris ^^)
Jusqu'à avant hier ça fonctionnait, mais sans que je comprenne pourquoi, maintenant ça ne marche plus (je ne me rappelle pas avoir modifié quelque chose, même si ça a du être le cas)...
J'ai eu 2 types d'erreur :
1 - "Erreur 7 (si je me rappelle bien) : mémoire insuffisante" (par exemple lorsque je souhaitais lire une propriété d'un des controles, Form_Formulaire.txt_annee.Name)
->Pour "corriger" j'ai du recopier mon formulaire dans un autre, supprimer le premier puis renommer le second comme le premier. C'est de la grosse bidouille mais après redémarrer ACCESS, puis le PC et avoir pas mal cherché, je voyais rien d'autre.
2 - "Erreur 29054 : Microsoft Access ne peut pas ajouter, renommer ou supprimer le(s) contrôle(s) sélectionné(s)"...... et ça dès que je crée un nouveau controle (à la ligne CreateControl).
Voici le code que j'utilise pour créer mes controles (à partir du module):
Public Sub Initialisation_Formulaire2()
Dim nb, x, y As Integer
Dim new_annee As Label
x = 1000
y = 1000
DoCmd.OpenForm "Formulaire2", acDesign, , , , acHidden
For nb = 1 To 4
Set new_annee = CreateControl(Form_Formulaire2.Name, acLabel, , "", "test", x, y, 500, 200)
x = x + 1000
y = y + 2000
Next nb
DoCmd.Close acForm, Form_MAJ.Name
Set new_annee = Nothing
End Sub
Pour les personnes qui me diront de tape F1 ou d'aller voir ici :
https://access.developpez.com/faq/?pa#formdynamique
https://access.developpez.com/faq/?pa...rm#AddRectForm
https://access.developpez.com/faq/?pa...reeDynCtrlCode
c'est déjà fait....
J'aimerai donc (si possible) un p'tit coup de pouce pour résoudre ma deuxième erreur (et potentiellement comprendre d'où vient la première et si elle peut se reproduire...)
Merci d'avance!
Fan-A-Tik
A voir également:
- [ACCESS] - Erreur création controle dynamique
- Creation compte gmail - Guide
- Tableau croisé dynamique - Guide
- Création site web - Guide
- Création compte google - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation