Erreur d'exécution 424 vba excel
Fermé
Gaustavo
Messages postés
4
Date d'inscription
mercredi 15 mars 2017
Statut
Membre
Dernière intervention
17 mars 2017
-
Modifié par Gaustavo le 15/03/2017 à 11:47
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 - 18 mars 2017 à 12:53
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 - 18 mars 2017 à 12:53
A voir également:
- Erreur d'exécution 424 vba excel
- Erreur 0x80070643 - Accueil - Windows
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
2 réponses
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
15 mars 2017 à 13:44
15 mars 2017 à 13:44
Bonjour Gaustavo, bonjour le forum,
Target est un argument de certaines macros événementielles comme Change, SelectionChange, etc. d'un onglet.
Tu ne peux pas l'utiliser dans une procédure d'un module standard comme tu l'as fait dans ta procédure Sub Facteur().
Second point, tu utilises la variable i mais à aucun moment tu n'en défini la valeur. Donc elle vaut 0 au début et par conséquent Cells(i, 2) va générer une autre erreur...
Target est un argument de certaines macros événementielles comme Change, SelectionChange, etc. d'un onglet.
Tu ne peux pas l'utiliser dans une procédure d'un module standard comme tu l'as fait dans ta procédure Sub Facteur().
Second point, tu utilises la variable i mais à aucun moment tu n'en défini la valeur. Donc elle vaut 0 au début et par conséquent Cells(i, 2) va générer une autre erreur...
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
18 mars 2017 à 12:53
18 mars 2017 à 12:53
Bonjour Gaustavo, bonjour le forum,
- Suppression d'une ligne vide dans le tableau des colonnes L à P de l'onglet Feuille de données car avec la formule DECALER pour la plage nommée Désignation elle devient dynamique. Elle s'adapte automatiquement si tu ajoutes ou supprimes des lignes mais elle n'accepte pas de ligne vide.
- Rajout d'une Liste de validation de données dans la plage B9:B169 de l'onglet feuille de calcul
- Adaptation du code avec tes tableaux.
Ça me paraît fonctionnel. Le fichier ici :
https://www.cjoint.com/c/GCsl1amheYR
- Suppression d'une ligne vide dans le tableau des colonnes L à P de l'onglet Feuille de données car avec la formule DECALER pour la plage nommée Désignation elle devient dynamique. Elle s'adapte automatiquement si tu ajoutes ou supprimes des lignes mais elle n'accepte pas de ligne vide.
- Rajout d'une Liste de validation de données dans la plage B9:B169 de l'onglet feuille de calcul
- Adaptation du code avec tes tableaux.
Ça me paraît fonctionnel. Le fichier ici :
https://www.cjoint.com/c/GCsl1amheYR
16 mars 2017 à 11:13
Tout d'abord, je tiens à vous remercier chaleureusement pour votre interaction et l'aide que vous m'apportez. Bah, je vous explique mon problème : je suis entrain d'élaborer une feuille de calcul et je veux une instruction qui me permet de parcourir les cellules de toute une colonne en Excel et en fonction de la valeur de la cellule (i,j) affiche une boite de dialogue qui demande de saisir une valeur qui sera affectée à une autre cellule (i,k) qui se trouve dans la même ligne.
Et concernant l'instruction : If Not Application.Intersect(Target, Range("g9:g169")) Is Nothing Then
je l'ai utilisé pour que mon programme s’exécute à chaque clique sur une cellule (i,k).
Je serai ravi et reconnaissant si vous m'aidez à résoudre ces problèmes.
Merci et bonne journée!
16 mars 2017 à 14:08
Pour bien comprendre il me faudrait le fichier ! Voir par exemple https://www.cjoint.com/ pour mettre un fichier en pièce jointe.
16 mars 2017 à 17:08
j'ai mis ci-joint l'adresse de mon fichier, vous allez trouvez dans le fichier l'explication du problème ainsi que le travail que j'essaye de faire. Merci encore pour votre aide.
https://www.cjoint.com/c/GCqqa46yeLL
16 mars 2017 à 21:24
Gaustavo, ce n'est pas une capture d'écran qu'il me faut mais bien les données réelles de l'onglet Feuille de données (pas envie de tout retaper) ! Je pense aussi que pour faciliter les choses le tableau de cet onglet devrait avoir deux colonnes de coefficient à la fin : une colonne coefficient minimum et une colonne coefficient maximum.
En pièce jointe un exemple avec juste deux données et la macro événementielle Change de l'onglet Feuil1 ci-dessous, tu adapteras pour la suite.. J'ai utilisé la formule DECALER pour générée la plage nommé Désignation ce qui la rend dynamique.
Choisis une machine an colonne A...
Au passage, ta macro CalculPerimetre devrait plutôt se trouver dans un module standard que dans le composant VBA Feuil1(Feuil1)...
Le fichier :
https://www.cjoint.com/c/GCquvxQCVDR
17 mars 2017 à 17:54
J'espère que vous allez très bien, bah j'ai testé le code que vous m'avez proposé dans ma feuille de calcul mais s’exécute pas automatiquement dès que j'entre une désignation d'un outil, est ce que je dois créer un menu déroulant indépendamment ou c'est inclue dans le programme que vous m'avez envoyé?
Je vous joins mon fichier qui comprend plusieurs feuilles et seulement "feuil de calcul" et "feuille de données" qui sont concernées par le programme. Et c'est d'ailleurs la raison pourquoi je vous ai envoyé la dernière fois seulement les feuilles concernés pour ne pas vous déranger par tout le fichier.
Merci encore de me présenter l'aide et le soutien, c'est vraiment très gentil de votre part.
Le fichier :
https://www.cjoint.com/c/GCrqGFSkN0e