Lancement automatique d'une macro
Fermé
seblg29
Messages postés
19
Date d'inscription
lundi 9 mars 2015
Statut
Membre
Dernière intervention
31 janvier 2019
-
Modifié le 28 déc. 2017 à 00:13
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 - 2 janv. 2018 à 16:01
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 - 2 janv. 2018 à 16:01
A voir également:
- Lancement automatique d'une macro
- Macro word - Guide
- Message automatique thunderbird - Guide
- Macro logiciel - Télécharger - Organisation
- Réponse automatique outlook - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
4 réponses
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
28 déc. 2017 à 00:05
28 déc. 2017 à 00:05
bonsoir,
moi je commencerais par ajouter
ensuite je mettrais un point d'arrêt sur
moi je commencerais par ajouter
option expliciten début de module, et donc declarer toutes mes variables.
ensuite je mettrais un point d'arrêt sur
Fin = True, puis j'exécuterais le code en pas à pas, pour comprendre ce qui se passe.
jordane45
Messages postés
38144
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
21 avril 2024
4 650
28 déc. 2017 à 00:12
28 déc. 2017 à 00:12
Bonjour,
Code à coller dans l'objet "Feuil" correspondant à ton besoin
NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Code à coller dans l'objet "Feuil" correspondant à ton besoin
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim nbCel As Integer Dim nbCnonVide As Integer Dim plg As Range Set plg = ActiveSheet.Range("K13:K29") nbCel = plg.Count nbCnonVide = Application.WorksheetFunction.CountA(plg) If nbCel = nbCnonVide Then Call Macro1 End Sub
NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
seblg29
Messages postés
19
Date d'inscription
lundi 9 mars 2015
Statut
Membre
Dernière intervention
31 janvier 2019
Modifié le 28 déc. 2017 à 14:32
Modifié le 28 déc. 2017 à 14:32
Bonjour,
J'ai collé le code dans feuil1, cependant la macro 1 ne s'exécute pas lorsque toutes mes cellules sont remplies.
Y a t'il une action à réaliser pour que celle ci se lance ?
Cordialement,
Sébastien
J'ai collé le code dans feuil1, cependant la macro 1 ne s'exécute pas lorsque toutes mes cellules sont remplies.
Y a t'il une action à réaliser pour que celle ci se lance ?
Cordialement,
Sébastien
jordane45
Messages postés
38144
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
21 avril 2024
4 650
28 déc. 2017 à 14:37
28 déc. 2017 à 14:37
As tu essayé de mettre un point d'arrêt dans la macro et de la faire dérouler en mode pas à pas pour voir ce qui se passait ?
Est tu sûr que le code de ta macro1 fait quelquechose ?
Comment les données sont elle remplis ? Manuellement ? Via une autre macro ? Via des formules ????
Sinon...dépose ton fichier sur un site comme cijoint qu'on le regarde ....
Si tu as collé le code que je t'ai donné comme il faut ... ça devrait parfaitement fonctionner.
Au passage.. tu es sur quelle version d'excel (office) ?
Est tu sûr que le code de ta macro1 fait quelquechose ?
Comment les données sont elle remplis ? Manuellement ? Via une autre macro ? Via des formules ????
Sinon...dépose ton fichier sur un site comme cijoint qu'on le regarde ....
Si tu as collé le code que je t'ai donné comme il faut ... ça devrait parfaitement fonctionner.
Au passage.. tu es sur quelle version d'excel (office) ?
seblg29
Messages postés
19
Date d'inscription
lundi 9 mars 2015
Statut
Membre
Dernière intervention
31 janvier 2019
28 déc. 2017 à 16:12
28 déc. 2017 à 16:12
La macro1 fonctionne parfaitement, celle ci se trouve dans le module 1.
J'ai collé le code comme vous me l'aviez conseillé dans Microsoft Excel Object : Feuil1.
Cependant, la zone devant être non vide sont des "formules" : =SI(E26="";"";E26).
Je travaille sous Excel 2010.
J'ai collé le code comme vous me l'aviez conseillé dans Microsoft Excel Object : Feuil1.
Cependant, la zone devant être non vide sont des "formules" : =SI(E26="";"";E26).
Je travaille sous Excel 2010.
jordane45
Messages postés
38144
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
21 avril 2024
4 650
28 déc. 2017 à 16:35
28 déc. 2017 à 16:35
TU ne m'as pas répondu concernant les points d'arrêt .
Tu ne nous as toujours pas montré ton fichier non plus. Tu peux le mettre sur le site cijoint https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers
Tu ne nous as toujours pas montré ton fichier non plus. Tu peux le mettre sur le site cijoint https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
>
seblg29
2 janv. 2018 à 11:53
2 janv. 2018 à 11:53
j'ai testé, et cela semble fonctionner dès que K29 est rempli.
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
Modifié le 2 janv. 2018 à 15:29
Modifié le 2 janv. 2018 à 15:29
Bonjour à tous,
tes saisies se font en B19:B20, B21:B22, etc, ce sont donc ces cellules qu'il faut superviser.
Sélectionne tes 16 cellules, nomme la plage saisie_obligatoire et :
tu auras juste à modifier cette plage nommée si ton besoin évolue.
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
tes saisies se font en B19:B20, B21:B22, etc, ce sont donc ces cellules qu'il faut superviser.
Sélectionne tes 16 cellules, nomme la plage saisie_obligatoire et :
Private Sub Worksheet_Change(ByVal Target As Range) If Application.CountA([saisie_obligatoire]) = [saisie_obligatoire].Cells.Count Then MsgBox "toutes les saisies sont faites" End If End Sub
tu auras juste à modifier cette plage nommée si ton besoin évolue.
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci