Erreur de compilation / Variable non définie

  • Initiateur de la discussion Initiateur de la discussion Halffy
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Halffy

XLDnaute Occasionnel
Bonsoir à Tous, j'espère que vous avez passé une bonne semaine; et que le week-end s'annonce bien...
Toutefois cette fois-ci, ce qui me ramène vers vous concerne un problème de variable non définie.
En effet depuis que j'ai rajouté une macro (Insertion d'une Icône dans Barre de Titre UserForm), je suis confronté à une "Erreur de compilation / Variable non définie".
Comme un exemple vaut mieux que mille explications, je vous joint le fichier qui pose problème en pièce-jointe.
Je remercie toutes personnes qui voudraient bien y consacrer de leurs temps afin de corriger ce soucis / Et je vous souhaite une bonne soirée.
Halffy /.
 

Pièces jointes

Re : Erreur de compilation / Variable non définie

Bonjour à tous,

Tu as Option Explicit en début de code : tu es obligé de déclarer les variables

Soit tu enlèves cette ligne (déconseillé)
Soit tu déclares tes variables (ici sans rien donc en Variant)


  • Dim c
  • Dim i
  • Dim Firstaddress
Extrait de l'aide :
Résumé des types de données


Le tableau suivant présente les reconnus en précisant la taille des enregistrements et la plage des valeurs.
Type de données Taille d'enregistrement Plage Byte 1 octet 0 à 255 Boolean 2 octets True ou False Integer 2 octets -32 768 à 32 767 Long
(entier long) 4 octets -2 147 483 648 à 2 147 483 647 Single
(à virgule flottante en simple précision) 4 octets -3,402823E38 à -1,401298E-45 pour les valeurs négatives ; 1,401298E-45 à 3,402823E38 pour les valeurs positives Double
(à virgule flottante en double précision) 8 octets -1,79769313486231E308 à
-4,94065645841247E-324 pour les valeurs négatives ; 4,94065645841247E-324 à 1,79769313486232E308 pour les valeurs positives Currency
(entier à décalage) 8 octets -922 337 203 685 477,5808 à 922 337 203 685 477,5807 Decimal 14 octets +/-79 228 162 514 264 337 593 543 950 335 sans séparateur décimal ;
+/-7,9228162514264337593543950335 avec 28 chiffres à droite du séparateur décimal ; le plus petit nombre différent de zéro est +/-0.0000000000000000000000000001. Date 8 octets 1er janvier 100 au 31 décembre 9999 Object 4 octets Toute référence à des données de type Object String
(longueur variable) 10 octets + longueur de la chaîne 0 à environ 2 milliards String
(longueur fixe) Longueur de la chaîne 1 à environ 65 400 Variant
(nombres) 16 octets Toute valeur numérique, avec la même plage de valeurs qu'une donnée de type Double Variant
(caractères) 22 octets + longueur de la chaîne Même plage de valeurs qu'une donnée de type String de longueur variable Type défini par l'utilisateur
(avec Type) En fonction des éléments La plage de valeurs de chaque élément correspond à celle de son type de données.

A+ à tous

Édition: Salut Kjin 🙂 ... Même combat
 
Dernière édition:
Re : Erreur de compilation / Variable non définie

Bonsoir,
En effet depuis que j'ai rajouté une macro (Insertion d'une Icône dans Barre de Titre UserForm), je suis confronté à une "Erreur de compilation / Variable non définie"
En copiant le code, tu as aussi copier la ligne "Option Explicit" tout en haut, qui t'oblige à déclarer toutes les variables dans ton module
Soit tu les déclares effectivement et c'est une bonne habitude à prendre, soit tu supprimes cette ligne
Code:
Private Sub CommandButton1_Click() 'CommandButton "VALIDER"
Dim Fl As Object, [COLOR="Blue"]c As Range, i As Byte, Firstaddress As String[/COLOR]

Edit : salut JCGL 🙂
Excellentes pages traitant du sujet sur le site de mdf que je salue également 🙂

A+
kjin
 
Dernière édition:
Re : Erreur de compilation / Variable non définie

Bonsoir JCGL,
Kjin, Salutation Cordiales; je constate que tu n'es jamais très loin en fait 😛

(Excusez-moi pour le délai, mais je dois jongler également avec mes enfants)
JCGL, Merci pour ton aide; effectivement, ça marche beaucoup mieux.
Je voyais bien le problème, mais je ne savais pas comment déclarer les variables. Toutefois pourrais-tu m'expliquer l'importance "relative" de ne pas supprimer "Option Explicit" s'il te plait. je voudrais bien comprendre un peu plus le fonctionnement de ces macros; car les utiliser: c'est bien / les comprendre, ce serait encore mieux. Et quand je vois l'extrait de l'aide que tu as joint, il va me falloir un certaint temps pour assimiler la chose 🙄

Kjin, Merci pour le coup de "patte" également; mais je vais déclarer les variables puisque cela semble plus propre.
Messieurs, encore Merci pour votre aide... je vous souhaite une bonne soirée.
Halffy /.
Ps: Kjin, tu vois... ça avance toujours un peu plus chaque jour 😀
 
Re : Erreur de compilation / Variable non définie

Kjin, re
Effectivement, je navais pas remarqué ;il faut dire que je dois m'occuper des devoirs de mes enfants (priorité), puis il faut conduire mon fils au judo... je dois gérer au mieux.
Et donc je découvre ton "fil"... C'est tout de même plus explicite. Donc je vais regarder cela de plus près à tête reposée.
je te remercie Kjin, pour le rappel, tu as bien fait.
@+ Halffy.
 
Re : Erreur de compilation / Variable non définie

Bonjour à tous,
Re Kjin 🙂,

Je confirme : la lecture de l'article de mDF sera des plus bénéfiques.

L'importance du 'Option Explicit', pour moi, n'est pas relative mais absolue...
En prenant soin avant de déposer un code de lancer une compilation du code (Débogage)
Évidemment chacun fait comme il l'entend...

A++ Kjin
A+ à tous
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

D
Réponses
4
Affichages
308
DidPouAxi
D
Réponses
3
Affichages
829
Retour