Autres Erreur sur code vba

koadima

XLDnaute Junior
Bonjour chers tous
J'ai suivi pas à pas un tutoriel vidéo que j'ai téléchargé. J'ai dans mon travail crée un combobox qui récupère la liste des écoles et des textbox qui s'occupent des notes des élèves.
cependant je n'arrive pas a activer les boutons de commande car une erreur revient toujours
SVP, aidez-moi avec le bon code correspondant.
 

Pièces jointes

  • TABLEAU SYNOPTIQUE - Copie.xlsm
    55.9 KB · Affichages: 18

TooFatBoy

XLDnaute Barbatruc
Perso, je ferais du pas à pas (d'où ma proposition avec la touche <F5>) pour savoir exactement où ça plante.
Ca risque d'être dès la première instruction vu qu'il y a une lettre avec accent. Du moins si c'est bien le problème que je suppute depuis que j'ai vu son général. ;)
 

koadima

XLDnaute Junior
Oui, j'ai vu. ;)

Si tu mets le curseur d'édition sur le nom de la macro "UserForm_Initialize" et que tu appuis sur la touche <F5>, il se passe quoi ?


[edit]
Je vois que Dudu2 est présent, donc je le laisse terminer de t'aider.
D'autant plus que moi je ne vois pas du tout d'où peux venir le problème. :D
Mais en attendant, si j'étais toi (mais je ne suis pas toi), j'enlèverais tous les accents dans les noms des variables.
[/edit]
J'ai en effet enlevé tous les accents et le bouton formulaire déclenche réellement le formulaire mais dès que je sélectionne une école l'erreur " erreur de compilation : Sub ou Fonction non définie"
 

TooFatBoy

XLDnaute Barbatruc
Si je comprends bien, sans les accents ça marche moins mal ???

Tu as utilisé <Ctrl> + <H> pour remplacer, dans tout ton projet en cours, tous les é par des e et tous les É par des E ?
Bon, après il faudra peut-être remettre les accents pour tes MsgBox...

Tu as un tableau structuré qui comporte un accent ( TableauÉcoles ), donc si tu as enlevé tous les accents dans le code, il ne peut plus trouver ton tableau, je pense.
Essaye d'enlever l'accent dans le nom du tableau structuré.
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Bonjour le Fil
Juste une question
Pourquoi passer par une variable "LisObject" pour ensuite alimenter un tableau avec les valeurs de cette variable ListObject.
Pourquoi pas Ex pour le TblBD
VB:
     TblBD =Range(NomTableauBD).ListObject.DataBodyRange.Value
'Et pour TblEcoles
TblEcoles = Range(NomTableauEcoles).ListObject.DataBodyRange.Value
Bonne journée
Jean marie
 
Dernière édition:

Dudu2

XLDnaute Barbatruc
J'ai en effet enlevé tous les accents et le bouton formulaire déclenche réellement le formulaire mais dès que je sélectionne une école l'erreur " erreur de compilation : Sub ou Fonction non définie"
D'où as-tu retiré les accents ?
Du code VBA ? Du nom des feuilles ? Du nom des tableaux structurés en gestionnaire de nom ?
Partout ?

Tu l'as fait du code VBA car "Sub ou Fonction non définie" signifie que tu l'as fait mais pas partout.
 

Dudu2

XLDnaute Barbatruc
Bonjour @ChTi160,
TblBD=Range(nomdutableau).ListObject.DataBodyRange.Value
Je suppose que tu fait référence au code de l'initialisation.
Parce que j'utilise systématiquement une variable ListObjet dès que j'ai à manipuler un tableau structuré.
En l'occurrence ça peut paraître inutile car on n'utilise que les DataBodyRange.Value mais si j'avais dû utiliser un titre de colonne, ou un total ou d'autres manips, c'était prêt. Et aussi parce que c'est ma propre convention. D'ailleurs on pourrait toujours utiliser Range(nomdutableau).ListObject à la place d'un Tbl.
 
Dernière édition:

Dudu2

XLDnaute Barbatruc
Alors aucun retour sur mon fichier de test du Post #28.

Dans le fichier ci-dessous, je n'ai modifié que le nom du tableau dans le Gestionnaire de noms: TableauÉcoles -> TableuEcoles. Je pense que ça suffira. Enfin si @koadima l'essaie celui-là !
 

Pièces jointes

  • TABLEAU SYNOPTIQUE V2.xlsm
    50.8 KB · Affichages: 4

koadima

XLDnaute Junior
J'ai en effet enlevé tous les accents et le bouton formulaire déclenche réellement le formulaire mais dès que je sélectionne une école l'erreur " erreur de compilation : Sub ou Fonction non définie"

Alors aucun retour sur mon fichier de test du Post #28.

Dans le fichier ci-dessous, je n'ai modifié que le nom du tableau dans le Gestionnaire de noms: TableauÉcoles -> TableuEcoles. Je pense que ça suffira. Enfin si @koadima l'essaie celui-là !
Formidable, formidable, formidable! Ça fonctionne correctement.
Merci nombreux à tous. Merci beaucoup. Merci énormément.
Les évaluations viennent de commencer hier, je serais à temps pour la compilation des tableaux synoptiques des résultats GRACE a vous. Merci merci merci
 

Dudu2

XLDnaute Barbatruc
@koadima, content pour toi que ça fonctionne. On l'aurait fait fonctionner de toutes façons car ici personne n'est laissé sans solution quand la demande est précise et documentée.

Le jeu de caractères de l'interface (pour les accents et autres caractères spéciaux) ne correspond pas toujours au jeu de caractères de l'éditeur VBA. Ce n'est pas très cool mais c'est à savoir.

Maintenant que ça fonctionne, si tu veux transformer ton tableau très horizontal en tableaux verticaux (1 tableau par classe), c'est une chose faisable.
 

Dudu2

XLDnaute Barbatruc
@koadima, avec Excel et la bureautique en général, tu connais les règles de sécurité...

Faire régulièrement des copies / sauvegardes du classeur aux différentes étapes de son évolution pour qu'en cas de problème, tu puisses repartir d'un classeur qui n'est pas complètement vide.
 

koadima

XLDnaute Junior
@koadima, avec Excel et la bureautique en général, tu connais les règles de sécurité...

Faire régulièrement des copies / sauvegardes du classeur aux différentes étapes de son évolution pour qu'en cas de problème, tu puisses repartir d'un classeur qui n'est pas complètement vide.
Bonjour mon ami.
Je vous dérange à nouveau. Le fichier fonctionne correctement avec mon d'ordinateur portable mais j'ai fait une copie pour travailler avec mon ordinateur de bureau et une erreur revient "erreur d'exécution '9': l'indice n'appartient pas à la sélection."
Lorsque je lance le formulaire, il s'exécute correctement, mais dès que je sélectionne une école l'erreur apparaît. J'ai supprimé la copie et repris une autre copie mais RAS. J'ai ouvert les 2 codes, celui sur le portable et sur l'ordi de bureau et comparé, même chose. Ça fonctionne sur l'ordinateur portable mais pas sur l'ordinateur de bureau.
Sur les 2 ordinateurs c'est W11 et Office 2021 qui sont installés. Je suis plus que largué.
Lorsque je clique sur débogage, c'est dans Function ÉcoleExiste

If TblBD.ListCoumns("ÉCOLES").DataBodyRange(LigneÉcole).Value=Combobox1.Value then qui est mis en cause, elle est en surbrillance jaune.
Ya t'il solution ?
 

Discussions similaires

Statistiques des forums

Discussions
314 450
Messages
2 109 730
Membres
110 553
dernier inscrit
loic55