Stopper une macro si cellule vide
Résolu/Fermé
Dimitri020386
Messages postés
5
Date d'inscription
vendredi 16 octobre 2020
Statut
Membre
Dernière intervention
20 octobre 2020
-
16 oct. 2020 à 11:22
Dimitri020386 Messages postés 5 Date d'inscription vendredi 16 octobre 2020 Statut Membre Dernière intervention 20 octobre 2020 - 20 oct. 2020 à 09:07
Dimitri020386 Messages postés 5 Date d'inscription vendredi 16 octobre 2020 Statut Membre Dernière intervention 20 octobre 2020 - 20 oct. 2020 à 09:07
A voir également:
- Arreter une macro vba
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro logiciel - Télécharger - Organisation
- Vba attendre 1 seconde ✓ - Forum VB / VBA
7 réponses
Yoyo01000
Messages postés
1639
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
7 mars 2022
167
16 oct. 2020 à 11:50
16 oct. 2020 à 11:50
Bonjour,
il faut mettre
C'est tout ce que je peux vous dire, sans fichier ni code sous les yeux !
il faut mettre
exit subaprès la partie de la macro qui vérifie qu'il n'y ait pas de cellule(s) vide(s).
C'est tout ce que je peux vous dire, sans fichier ni code sous les yeux !
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
16 oct. 2020 à 12:02
16 oct. 2020 à 12:02
Bonjour,
je confirme, impossible de répondre correctement sans fichier de travail.
On ne sait pas si ce sont des valeurs ou des formules. Si une cellule vide est vraiment vide (sans formule), ou bien si "" doit être considérer comme vide, et j'en passe...
cjoint.com et coller ici le lien fourni
eric
je confirme, impossible de répondre correctement sans fichier de travail.
On ne sait pas si ce sont des valeurs ou des formules. Si une cellule vide est vraiment vide (sans formule), ou bien si "" doit être considérer comme vide, et j'en passe...
cjoint.com et coller ici le lien fourni
eric
Dimitri020386
Messages postés
5
Date d'inscription
vendredi 16 octobre 2020
Statut
Membre
Dernière intervention
20 octobre 2020
16 oct. 2020 à 13:37
16 oct. 2020 à 13:37
OK je comprend.
Voici en lien mon fichier :
https://www.cjoint.com/c/JJqlFZOkhFJ
J'ai bien pris note pour le <gras>exit sub (Merci Yoyo01000)
Je confirme que les cellule seront totalement vide, aucune formule dans celles-ci.
Voici en lien mon fichier :
https://www.cjoint.com/c/JJqlFZOkhFJ
J'ai bien pris note pour le <gras>exit sub (Merci Yoyo01000)
Je confirme que les cellule seront totalement vide, aucune formule dans celles-ci.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
16 oct. 2020 à 19:57
16 oct. 2020 à 19:57
J'ai supposé que tes onglets étaient les 7 derniers, tu aurais pu préciser...
Si ces onglets sont toujours consécutifs ajoute un nom avec pour formule :
Ca calcule le nombre de saisies entre ces 2 feuilles (incluses).
En cas d'évolution tu n'auras que cette formule à modifier.
Dans le code :
Si ces feuilles sont sujettes à changement, il peut être intéressant de créer une feuille Début, une autre Fin (adapter la formule) et insérer/supprimer entre les 2 sans oublier d'ajuster le nombre de saisies voulues dans la formule.
eric
Si ces onglets sont toujours consécutifs ajoute un nom avec pour formule :
=NBVAL('Data Mon épargne:Data ACTIONS EDF'!$M$8:$N$8)=14
Ca calcule le nombre de saisies entre ces 2 feuilles (incluses).
En cas d'évolution tu n'auras que cette formule à modifier.
Dans le code :
If Not [saisiesOK] Then Exit Sub
Si ces feuilles sont sujettes à changement, il peut être intéressant de créer une feuille Début, une autre Fin (adapter la formule) et insérer/supprimer entre les 2 sans oublier d'ajuster le nombre de saisies voulues dans la formule.
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dimitri020386
Messages postés
5
Date d'inscription
vendredi 16 octobre 2020
Statut
Membre
Dernière intervention
20 octobre 2020
19 oct. 2020 à 14:36
19 oct. 2020 à 14:36
Merci beaucoup Eric,
Effectivement j'ai complètement zappé de préciser, toutes mes excuses.
Je viens de faire un essai, je ne comprend pas grand chose car j'ai testé ce que tu m'as donner :
"NBVAL("Data Mon épargne:Data ACTIONS EDF" & "M8:N8") = 14
If Not NBVAL Then Exit Sub"
Ne fonctionnant pas, j'ai donc tenté une modif car Visual basic ne veux pas des " ' " et du " ! ".
J'ai donc écris ce qui suit mais je pense que j'ai dû faire une (voir plusieurs) erreur(s) dans l'écriture de mon code.
extractionOK = NBVAL("Data Mon épargne:Data ACTIONS EDF" & "M8:N8") = 14
If Not extractionOK Then Exit Sub
La macro bloque sur "NBVAL"
J'ai un message d'erreur me disant :
"Erreur de compilation:
Sub ou fonction non définie"
Peux-tu me dire ce qui ne va pas?
Je suis sous Microsoft visual basic 7.1, est-il possible que certaines fonctions ne soient compatible qu'avec certaines versions de visual basic?
Et au passage, je suis nouveau sur les forums, comment fait-on pour intégrer dans un encadré les lignes de codes VBA ?
Dimitri
Effectivement j'ai complètement zappé de préciser, toutes mes excuses.
Je viens de faire un essai, je ne comprend pas grand chose car j'ai testé ce que tu m'as donner :
"NBVAL("Data Mon épargne:Data ACTIONS EDF" & "M8:N8") = 14
If Not NBVAL Then Exit Sub"
Ne fonctionnant pas, j'ai donc tenté une modif car Visual basic ne veux pas des " ' " et du " ! ".
J'ai donc écris ce qui suit mais je pense que j'ai dû faire une (voir plusieurs) erreur(s) dans l'écriture de mon code.
extractionOK = NBVAL("Data Mon épargne:Data ACTIONS EDF" & "M8:N8") = 14
If Not extractionOK Then Exit Sub
La macro bloque sur "NBVAL"
J'ai un message d'erreur me disant :
"Erreur de compilation:
Sub ou fonction non définie"
Peux-tu me dire ce qui ne va pas?
Je suis sous Microsoft visual basic 7.1, est-il possible que certaines fonctions ne soient compatible qu'avec certaines versions de visual basic?
Et au passage, je suis nouveau sur les forums, comment fait-on pour intégrer dans un encadré les lignes de codes VBA ?
Dimitri
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
19 oct. 2020 à 16:50
19 oct. 2020 à 16:50
Bonjour,
La formule je ne t'ai pas dit de la mettre dans le code, mais dans un nom.
Dans excel (pas vba) tu vas dans 'Formules / Noms définis / Définir un nom' et tu le crées.
Et dans le code tu utilises le nom que tu as créé, mis entre crochets [ton_nom] ou sous cette forme Range("ton_nom")
eric
La formule je ne t'ai pas dit de la mettre dans le code, mais dans un nom.
Dans excel (pas vba) tu vas dans 'Formules / Noms définis / Définir un nom' et tu le crées.
Et dans le code tu utilises le nom que tu as créé, mis entre crochets [ton_nom] ou sous cette forme Range("ton_nom")
eric
Dimitri020386
Messages postés
5
Date d'inscription
vendredi 16 octobre 2020
Statut
Membre
Dernière intervention
20 octobre 2020
20 oct. 2020 à 08:43
20 oct. 2020 à 08:43
Super, Je vais essayer ça tout de suite.
J'ai encore beaucoup de choses à apprendre...
Merci
J'ai encore beaucoup de choses à apprendre...
Merci
Dimitri020386
Messages postés
5
Date d'inscription
vendredi 16 octobre 2020
Statut
Membre
Dernière intervention
20 octobre 2020
20 oct. 2020 à 09:07
20 oct. 2020 à 09:07
C'est parfait, ça fonctionne nickel !!!!!
J'ai nénamoins testé sous la forme Range("extractionOK") mais ça ne fonctionne pas.
J'ai donc laissé sous la forme If Not [extractionOK] Then Exit Sub
Merci beaucoup.
J'ai nénamoins testé sous la forme Range("extractionOK") mais ça ne fonctionne pas.
J'ai donc laissé sous la forme If Not [extractionOK] Then Exit Sub
Merci beaucoup.