Bonjour,
Je voudrais savoir comment, dans une liste de nombres quelquonque on peut trouver les nombres impairs.
Attention, je ne souhaite pas compter les nombres impairs mais les retranscrire dans une autre colonne.
Merci d'avance!!
Bonjour,
Je voudrais savoir comment, dans une liste de nombres quelquonque on peut trouver les nombres impairs.
Attention, je ne souhaite pas compter les nombres impairs mais les retranscrire dans une autre colonne.
Merci d'avance!!
Donne un exemple de ta liste
Sinon, regarde mod, dans l'aide. Un entier dont le modulo 2 donne un reste est un nombre impair.
Tu ne dis pas si tu as des décimales
Exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Liste = Array(25, 12, 78, 45, 19, 14, 5) for i = 0 To Ubound(Liste) if Liste(i) mod 2 <> 0 then msgbox "tu l'as ton nombre impair ! " & Liste(i) next
Je n'ai pas de nombre décimaux.
Exemple tout bête:
2
3
4
5
6
et je voudrais qu'il me remette donc dans la colonne a côté:
3
5
ouskel'n'or a raison c'est le modulo qui va te sauver
estImpair(3) renvoie true
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 function estImpair(nombre as integer) estImpair=(nombre mod 2 <> 0) end function
estImpair(4) renvoie faux
Tu cherches la dernière ligne de ta colonne
puis tu lis la valeur de chaque ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part DerniereLigne = Range("A65535").End(xlUp).Row
VRAI = Impair
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 For i = 1 to DerniereLigne Cells(i,2).value = Cells(i,1) mod 2 <> 0 Next
FAUX = Pair
bonjour à tous
en b1 tu mets : =si(mod(A1;2)=1;A1;"")
tu etires la formule vers le bas
re:
sinon je te joins un fichier, avec fonction personnalisée permetant de supprimer les cellules vides
Super, par contre, je voulais afficher les nombres impairs sans lignes vides en colonne BEnvoyé par ouskel'n'or
J'ai mis
If Cells(i, 2) = True Then Cells(i, 2).Value
If Cells(i, 2) = False Then Cells(i, 2).clearcontent
mais ca marche pas
Désolé je débute en VBA
En une fois, c'est mieux
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 For i = 1 to DerniereLigne If Cells(i,1) mod 2 <> 0 then Cells(i,2).value = Cells(i,1).value Next
Oui d'accord mais ca ne m'enlève pas les lignes vides qui contenaient des nombres pairs dans la colonne A.Envoyé par ouskel'n'or
Comment faire? avec un offset?
Merci!!
Faut tout dire du premier coup![]()
Attention, ce code te supprime toutes les lignes contenant un nombre Pair.
C'est ce que tu veux ? Là, on part à l'envers, cad de la dernière ligne
A+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 For i = DerniereLigne to 1 step - 1 If Cells(i,1) mod 2 <> 0 then Cells(i,2).value = Cells(i,1).value else Cells(i,1).entireRow.delete endif Next
Oui c'est ec que je veux mais par contre, ca me met deux fois les nbres impairs dans colone A puis col BEnvoyé par ouskel'n'or
![]()
ah non ca y'est c'est bon, j'ai trouvé!!
Mais je sais pas si je préfereai pas mettre les nombres impairs à côté
je vais voir
si c'est pas bon, je reviens vers toi!!
Merci bcp!
Desole mais je ne serqi plus la (et jai un pb de clavier)![]()
hum hum il existe deux fonctions dans analyse
isodd et iseven
Partager