[vba+excel] recherche existance variable
kosovar
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Alain -
Alain -
Bonjour,
j'ai un "léger" soucis concernant une macro vba sous excel !
La macro doit me demander d'entrer une valeur pour une variable donné (jusque là rien de compliqué, un InputBox faisant l'affaire !)
Une fois cette valeur entrée, il faudrait que la macro aille vérifier l'existence de cette valeur dans un tableau "base de donnée" située sur une autre feuille de calcul.
Si la valeur entrée n'existe pas alors la macro continue tranquillement jusqu'à la fin, mais si la valeur existe déja, la macro doit effectuer une boucle me redemandant d'entrer à nouveau la valeur jusqu'à ce qu'elle ne trouve aucune correspondance.
exemple, je suis sur la feuille1, je lance ma macro, elle me demande d'entrer le nom de l'objet ("objet" étant le nom de la variable).
je tape "stylo" et la macro va verifier dans la feuille2 si le mot "stylo" existe déjà.
pas de chance le mot "stylo" existe déjà, la macro m'envoie un message d'erreur me demandant d'entrer un autre nom. j'entre le mot "feuille" et rebelote le mot existe deja. après plusieur essai je tombe sur un mot n'étant pas dans la feuille2 la macro continue à s'executer normalement.
merci d'avance pour votre aide
j'ai un "léger" soucis concernant une macro vba sous excel !
La macro doit me demander d'entrer une valeur pour une variable donné (jusque là rien de compliqué, un InputBox faisant l'affaire !)
Une fois cette valeur entrée, il faudrait que la macro aille vérifier l'existence de cette valeur dans un tableau "base de donnée" située sur une autre feuille de calcul.
Si la valeur entrée n'existe pas alors la macro continue tranquillement jusqu'à la fin, mais si la valeur existe déja, la macro doit effectuer une boucle me redemandant d'entrer à nouveau la valeur jusqu'à ce qu'elle ne trouve aucune correspondance.
exemple, je suis sur la feuille1, je lance ma macro, elle me demande d'entrer le nom de l'objet ("objet" étant le nom de la variable).
je tape "stylo" et la macro va verifier dans la feuille2 si le mot "stylo" existe déjà.
pas de chance le mot "stylo" existe déjà, la macro m'envoie un message d'erreur me demandant d'entrer un autre nom. j'entre le mot "feuille" et rebelote le mot existe deja. après plusieur essai je tombe sur un mot n'étant pas dans la feuille2 la macro continue à s'executer normalement.
merci d'avance pour votre aide
A voir également:
- [vba+excel] recherche existance variable
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
1 réponse
pour recherche de mot "mot" dans une table de dimension connue r ligne x c colonnes (sinon, on peut toujours trouver les dimensions de cette table...)
mem=0 ' mem est initialisé à 0 , si mot est dans la table, il passe à 1...
for i= 1 to r
for j=1 to c
if cells(i,j)="mot" then
mem=1
i=r ' pour terminer la boucle plus vite, on peut directement mettre i et j à la valeur de fin de boucle...
j=c
end if
next
next
if mem<>0 then
msgbox "Erreur"
end if
mem=0 ' mem est initialisé à 0 , si mot est dans la table, il passe à 1...
for i= 1 to r
for j=1 to c
if cells(i,j)="mot" then
mem=1
i=r ' pour terminer la boucle plus vite, on peut directement mettre i et j à la valeur de fin de boucle...
j=c
end if
next
next
if mem<>0 then
msgbox "Erreur"
end if