[VBA et Excel]

Résolu/Fermé
Utilisateur anonyme - 15 avril 2010 à 10:03
 Utilisateur anonyme - 16 avril 2010 à 10:19
Bonjour,

J'ai essayé avec le générateur de macro d'Excel de créer une formule conditionnelle.
En regardant dans le code, je ne retrouve pas ma formule.

On ne peut pas le faire ?

Merci
A voir également:

9 réponses

Utilisateur anonyme
15 avril 2010 à 10:15
Je voulais mettre ceci dans la formule conditionelle
=NB.SI($A$2:$A$1037;A2)>1


Et le code que je vois dans la macro est
Selection.Copy
Range("A3").Select
ActiveWindow.ScrollRow = 1017
Range("A3:A1037").Select
Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=False
Range("A2").Select
Application.CutCopyMode = False


Merci
1
jejelefou Messages postés 304 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 18 février 2016 42
15 avril 2010 à 10:32
bonjour

Sub transpose()
'l'equivalent de =NB.SI($A$2:$A$1037;A2)>1 est

trouve = 0

For i = 2 To 1037

If Cells(i, 1) = Cells(2, 1) Then
trouve = trouve + 1
End If

Next

'le resultat se trouve dans "trouve" je je mets dans B2
Cells(2, 2) = trouve


End Sub

a+

jéjé
0
chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 308
15 avril 2010 à 10:05
Bonjour,

dis-nous exactement ce que tu cherches à faire, afin que nous puissions t'aider.

Peux-tu mettre également le code qui a été généré par l'enregistreur de macro ?

Cordialement.
0
jejelefou Messages postés 304 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 18 février 2016 42
15 avril 2010 à 10:24
bonjour pour une mise en forme conditionnelle voici le code que tu peux generer toi meme :

Sub mise_en_forme_conditionnelle()

'premiere condition
x = 5


If Cells(1, 1).Value = x Then

Cells(1, 1).Interior.ColorIndex = 5

With Cells(1, 1).Font
.Name = "Arial"
.Size = 8
.Italic = True
.Bold = True
.ColorIndex = 8
End With

End If
End Sub


evidement il y a d'autres options

a+

jéjé
0
Utilisateur anonyme
15 avril 2010 à 10:28
Et si je veux mettre un trucs plus complexe genre
NB.SI($A$2:$A$1037;A2)>1
plutot que x = 5 :D

;)
0
chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 308
15 avril 2010 à 10:30
Que cherches-tu exactement à faire, parce que là j'ai un peu du mal à comprendre. Ta formule semble légèrement incohérente.... Enfin c'est mon avis
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
15 avril 2010 à 10:34
Je recherche dans une liste si plus d'une fois apparait une valeur et je met une couleur à la cellule
0
chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 308
15 avril 2010 à 10:40
Tu peux très bien faire ça en passant par la mise en forme conditionnelle, pas besoin de macro.
Quelle est ta version d'Excel ?
0
Utilisateur anonyme
15 avril 2010 à 10:44
Oui, je sais le faire par excel, mais j'ai besoin de passer par les commandes vba ;)
C'est vb intégré a un vieux excel 97
0
jejelefou Messages postés 304 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 18 février 2016 42
15 avril 2010 à 10:47
bonjour

Sub transpose()
'l'equivalent de =NB.SI($A$2:$A$1037;A2)>1 est

trouve = 0

For i = 2 To 1037

If Cells(i, 1) = Cells(2, 1) Then
trouve = trouve + 1
End If

Next

'le resultat se trouve dans "trouve" je je mets dans B2
Cells(2, 2) = trouve


End Sub

a+

jéjé
0
Utilisateur anonyme
15 avril 2010 à 11:28
J'ai essayé comme ca

Range("A2").Select
For i = 2 To 1047
suivante = i + 1
If Cells(i, 1) = Cells(suivante, 1) Then
Cells(1, 1).Interior.ColorIndex = 5
End If
Next

Mais ca ne marche pas, ca me surligne que la cellule A1
0
Utilisateur anonyme
16 avril 2010 à 09:48
Salut essayé également comme ça

IF(SUMIF($B$2:$B$" & ligne & ",B2,$E$2:$E$" & ligne & ")>1) then
   ActiveCell.Interior.ColorIndex = 5
End If


Mais ca ne veut pas :s
0
jejelefou Messages postés 304 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 18 février 2016 42
16 avril 2010 à 10:01
Bonjour,
Quelles cellules doivent etre colorées?

a+

jéjé
0
jejelefou Messages postés 304 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 18 février 2016 42
16 avril 2010 à 10:04
si se sont les cellules identiques il faut mettre :
Cells(i, 1).Interior.ColorIndex = 5
Cells(suivante, 1).Interior.ColorIndex = 5

à la place de
Cells(1, 1).Interior.ColorIndex = 5
0
Utilisateur anonyme
16 avril 2010 à 10:06
Ca bloque sur le IF déjà, je suis un peu perdu. Tu peux m'aider.
0
jejelefou Messages postés 304 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 18 février 2016 42
Modifié par jejelefou le 16/04/2010 à 10:08
For i = 2 To 1047
suivante = i + 1
If Cells(i, 1) = Cells(suivante, 1) Then
Cells(i, 1).Interior.ColorIndex = 5
Cells(suivante, 1).Interior.ColorIndex = 5
End If
Next
0
Utilisateur anonyme
16 avril 2010 à 10:19
Parfait ;)

Merci
0