Soucis création d'une macro VBA (débutant)
Résolu/Fermé
McFly
-
23 déc. 2009 à 16:13
tompols Messages postés 1273 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 25 novembre 2013 - 24 déc. 2009 à 09:52
tompols Messages postés 1273 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 25 novembre 2013 - 24 déc. 2009 à 09:52
A voir également:
- Soucis création d'une macro VBA (débutant)
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Creation compte gmail - Guide
- Création compte google - Guide
- Création site web - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
4 réponses
tompols
Messages postés
1273
Date d'inscription
jeudi 29 juillet 2004
Statut
Contributeur
Dernière intervention
25 novembre 2013
435
23 déc. 2009 à 16:21
23 déc. 2009 à 16:21
Bonjour
=> il me smeble que tu as un end en trop !
NB : tu peux aussi utiliser select case pour tester les valeurs.....
For Each cell In masel If cell.Value = 2 Then cell.Value = "80-02-60" Else End End If Next cell
=> il me smeble que tu as un end en trop !
For Each cell In masel If cell.Value = 2 Then cell.Value = "80-02-60" Elseif cell.Value = 3 then ce que tu veux End If Next cell
NB : tu peux aussi utiliser select case pour tester les valeurs.....
tompols
Messages postés
1273
Date d'inscription
jeudi 29 juillet 2004
Statut
Contributeur
Dernière intervention
25 novembre 2013
435
23 déc. 2009 à 16:56
23 déc. 2009 à 16:56
Re,
Bon jsuis pas sur niveau perf, mais en, tout cas "select case" parait plus "fait pour" ce que tu veux faire...regarde dans l'aide vba mais ça ferait un truc comme ça :
un ptit lien en passant : https://www.ozgrid.com/VBA/select-case.htm
A+
Bon jsuis pas sur niveau perf, mais en, tout cas "select case" parait plus "fait pour" ce que tu veux faire...regarde dans l'aide vba mais ça ferait un truc comme ça :
For Each c In masel Select Case c.Value Case 1, 2, 3 c.Value = "1-2-3" End Select Next c
un ptit lien en passant : https://www.ozgrid.com/VBA/select-case.htm
A+
Woot!!!
Merci beaucoup.
Même si ça n'est pas plus rapide, ça sera au moins plus clair dans la rédaction du code.
Je vais tester merci encore.
McFly
Merci beaucoup.
Même si ça n'est pas plus rapide, ça sera au moins plus clair dans la rédaction du code.
Je vais tester merci encore.
McFly
tompols
Messages postés
1273
Date d'inscription
jeudi 29 juillet 2004
Statut
Contributeur
Dernière intervention
25 novembre 2013
435
24 déc. 2009 à 09:52
24 déc. 2009 à 09:52
Re,
Même si ça n'est pas plus rapide, ça sera au moins plus clair dans la rédaction du code. => toutafé :)
Je mets en "résolu"
bonne journée
Même si ça n'est pas plus rapide, ça sera au moins plus clair dans la rédaction du code. => toutafé :)
Je mets en "résolu"
bonne journée
23 déc. 2009 à 16:31
j'avais enlevé le end et ça ne fonctionait toujours pas... en fait c'est le
else
if
qui posait problème, je l'ai remplacé par ton elseif et ça fonctionne (je n'ai pas remis le end)
par contre, je n'ai pas très bien compris ce qu'est le case ?
en gros, en ce qui me concerne:
J'ai une extraction de base de donnée qui me sort un tableau avec des caisses 1,2,3 etc.
cependant, je souhaite que certaines aient le même numéro par exemple, la 1, la 2 et la 3 se sont groupées, je souhaite donc leur donner le nom "1-2-3"
Je suis donc parti dans l'idée de tester chaque cellule pour vérifier sa valeur et, si elle correspond à 1, 2 ou 3, je la remplace par "1-2-3"
tu veux dire qu'en utilisant case, ça serait plus rapide ?