attribuer un code à partir d'un chiffre d'une cellule
9 réponses
newoceane2000
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre
allant de 0 =E0 100.
Je voudrais pouvoir (si possible gr=E2ce =E0 une macro) avoir un chiffre
qui s'affiche automatiquement dans la colonne D en fonction de ce qui
est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 =E0 100
2 pour un nombre en colonne C de plus de 10 =E0 30
3 pour un nombre en colonne C de plus de 3 =E0 10
4 pour un nombre en colonne C de plus de 1 =E0 3
5 pour un nombre en colonne C de plus de 0.3 =E0 1
6 pour un nombre en colonne C de plus de 0.1 =E0 0.3
7 pour un nombre en colonne C inf=E9rieur ou =E9gal =E0 0.1
Par Exemple si dans la colonne C, j'ai :
30
25
1
en colonne D on obtient :
2
2
5
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
Select Case c
Case 31 To 100: Range("D" & c.Row) = 1
Case 11 To 30: Range("D" & c.Row) = 2
Case 4 To 10: Range("D" & c.Row) = 3
Case 2 To 3: Range("D" & c.Row) = 4
Case 0.4 To 1: Range("D" & c.Row) = 5
Case 0.2 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
End Select
Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre
allant de 0 à 100.
Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre
qui s'affiche automatiquement dans la colonne D en fonction de ce qui
est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100
2 pour un nombre en colonne C de plus de 10 à 30
3 pour un nombre en colonne C de plus de 3 à 10
4 pour un nombre en colonne C de plus de 1 à 3
5 pour un nombre en colonne C de plus de 0.3 à 1
6 pour un nombre en colonne C de plus de 0.1 à 0.3
7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai :
30
25
1
en colonne D on obtient :
2
2
5
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
Daniel
Bonjour.
Sub test() Dim c As Range, Tablo Tablo = Array(9 ^ 9, 100, 30, 10, 3, 1, 0.3, 0.1) For Each c In Range("C1", Range("C65536").End(xlUp)) Var = Application.Match(c, Tablo, -1) - 1 If Var = 0 Then Var = "" c.Offset(0, 1) = Var Next c End Sub
Cordialement. Daniel a écrit dans le message de news:
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
Bonjour.
Sub test()
Dim c As Range, Tablo
Tablo = Array(9 ^ 9, 100, 30, 10, 3, 1, 0.3, 0.1)
For Each c In Range("C1", Range("C65536").End(xlUp))
Var = Application.Match(c, Tablo, -1) - 1
If Var = 0 Then Var = ""
c.Offset(0, 1) = Var
Next c
End Sub
Cordialement.
Daniel
<newoceane2000@yahoo.fr> a écrit dans le message de news:
1178378541.733850.108510@p77g2000hsh.googlegroups.com...
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre
allant de 0 à 100.
Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre
qui s'affiche automatiquement dans la colonne D en fonction de ce qui
est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100
2 pour un nombre en colonne C de plus de 10 à 30
3 pour un nombre en colonne C de plus de 3 à 10
4 pour un nombre en colonne C de plus de 1 à 3
5 pour un nombre en colonne C de plus de 0.3 à 1
6 pour un nombre en colonne C de plus de 0.1 à 0.3
7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai :
30
25
1
en colonne D on obtient :
2
2
5
Sub test() Dim c As Range, Tablo Tablo = Array(9 ^ 9, 100, 30, 10, 3, 1, 0.3, 0.1) For Each c In Range("C1", Range("C65536").End(xlUp)) Var = Application.Match(c, Tablo, -1) - 1 If Var = 0 Then Var = "" c.Offset(0, 1) = Var Next c End Sub
Cordialement. Daniel a écrit dans le message de news:
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
newoceane2000
On 5 mai, 18:07, "Daniel" wrote:
Bonjour.
Sub test() Dim c As Range, Tablo Tablo = Array(9 ^ 9, 100, 30, 10, 3, 1, 0.3, 0.1) For Each c In Range("C1", Range("C65536").End(xlUp)) Var = Application.Match(c, Tablo, -1) - 1 If Var = 0 Then Var = "" c.Offset(0, 1) = Var Next c End Sub
Cordialement. Daniel a écrit dans le message de news:
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
Merci d'avoir répondu si vite !! La macro marche très bien, malgré que je ne comprenne pas très bien comment elle fonctionne. Ecore merci pour tout
On 5 mai, 18:07, "Daniel" <dZZZcolarde...@free.fr> wrote:
Bonjour.
Sub test()
Dim c As Range, Tablo
Tablo = Array(9 ^ 9, 100, 30, 10, 3, 1, 0.3, 0.1)
For Each c In Range("C1", Range("C65536").End(xlUp))
Var = Application.Match(c, Tablo, -1) - 1
If Var = 0 Then Var = ""
c.Offset(0, 1) = Var
Next c
End Sub
Cordialement.
Daniel
<newoceane2...@yahoo.fr> a écrit dans le message de news:
1178378541.733850.108...@p77g2000hsh.googlegroups.com...
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre
allant de 0 à 100.
Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre
qui s'affiche automatiquement dans la colonne D en fonction de ce qui
est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100
2 pour un nombre en colonne C de plus de 10 à 30
3 pour un nombre en colonne C de plus de 3 à 10
4 pour un nombre en colonne C de plus de 1 à 3
5 pour un nombre en colonne C de plus de 0.3 à 1
6 pour un nombre en colonne C de plus de 0.1 à 0.3
7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai :
30
25
1
en colonne D on obtient :
2
2
5
Merci d'avance pour votre aide si précieuse...
Merci d'avoir répondu si vite !!
La macro marche très bien, malgré que je ne comprenne pas très bien
comment elle fonctionne.
Ecore merci pour tout
Sub test() Dim c As Range, Tablo Tablo = Array(9 ^ 9, 100, 30, 10, 3, 1, 0.3, 0.1) For Each c In Range("C1", Range("C65536").End(xlUp)) Var = Application.Match(c, Tablo, -1) - 1 If Var = 0 Then Var = "" c.Offset(0, 1) = Var Next c End Sub
Cordialement. Daniel a écrit dans le message de news:
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
Merci d'avoir répondu si vite !! La macro marche très bien, malgré que je ne comprenne pas très bien comment elle fonctionne. Ecore merci pour tout
R1
isabelle wrote:
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Attention, la valeur 30.5 (par exemple) risque de ne pas être bien
interprétée. R1
isabelle wrote:
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
Select Case c
Case 31 To 100: Range("D" & c.Row) = 1
Case 11 To 30: Range("D" & c.Row) = 2
Case 4 To 10: Range("D" & c.Row) = 3
Case 2 To 3: Range("D" & c.Row) = 4
Case 0.4 To 1: Range("D" & c.Row) = 5
Case 0.2 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
End Select
Next
isabelle
Attention, la valeur 30.5 (par exemple) risque de ne pas être bien
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Attention, la valeur 30.5 (par exemple) risque de ne pas être bien
interprétée. R1
luc c
Que veut-dire le fonction end(xlup).row ?
"isabelle" a écrit dans le message de news:
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
Que veut-dire le fonction end(xlup).row ?
"isabelle" <i@v> a écrit dans le message de news:
OfdtbyyjHHA.392@TK2MSFTNGP06.phx.gbl...
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
Select Case c
Case 31 To 100: Range("D" & c.Row) = 1
Case 11 To 30: Range("D" & c.Row) = 2
Case 4 To 10: Range("D" & c.Row) = 3
Case 2 To 3: Range("D" & c.Row) = 4
Case 0.4 To 1: Range("D" & c.Row) = 5
Case 0.2 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
End Select
Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre
allant de 0 à 100.
Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre
qui s'affiche automatiquement dans la colonne D en fonction de ce qui
est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100
2 pour un nombre en colonne C de plus de 10 à 30
3 pour un nombre en colonne C de plus de 3 à 10
4 pour un nombre en colonne C de plus de 1 à 3
5 pour un nombre en colonne C de plus de 0.3 à 1
6 pour un nombre en colonne C de plus de 0.1 à 0.3
7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai :
30
25
1
en colonne D on obtient :
2
2
5
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
isabelle
bonjour Luc,
cela correspond aux combinaisons de touches FIN+BAS
isabelle
Que veut-dire le fonction end(xlup).row ?
"isabelle" a écrit dans le message de news:
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
bonjour Luc,
cela correspond aux combinaisons de touches FIN+BAS
isabelle
Que veut-dire le fonction end(xlup).row ?
"isabelle" <i@v> a écrit dans le message de news:
OfdtbyyjHHA.392@TK2MSFTNGP06.phx.gbl...
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
Select Case c
Case 31 To 100: Range("D" & c.Row) = 1
Case 11 To 30: Range("D" & c.Row) = 2
Case 4 To 10: Range("D" & c.Row) = 3
Case 2 To 3: Range("D" & c.Row) = 4
Case 0.4 To 1: Range("D" & c.Row) = 5
Case 0.2 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
End Select
Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre
allant de 0 à 100.
Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre
qui s'affiche automatiquement dans la colonne D en fonction de ce qui
est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100
2 pour un nombre en colonne C de plus de 10 à 30
3 pour un nombre en colonne C de plus de 3 à 10
4 pour un nombre en colonne C de plus de 1 à 3
5 pour un nombre en colonne C de plus de 0.3 à 1
6 pour un nombre en colonne C de plus de 0.1 à 0.3
7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai :
30
25
1
en colonne D on obtient :
2
2
5
cela correspond aux combinaisons de touches FIN+BAS
isabelle
Que veut-dire le fonction end(xlup).row ?
"isabelle" a écrit dans le message de news:
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Bonjour,
J'ai une feuille Excel avec dans la colonne C, une suite de chiffre allant de 0 à 100. Je voudrais pouvoir (si possible grâce à une macro) avoir un chiffre qui s'affiche automatiquement dans la colonne D en fonction de ce qui est rempli dans la colonne C.
1 pour un nombre en colonne C de plus de 30 à 100 2 pour un nombre en colonne C de plus de 10 à 30 3 pour un nombre en colonne C de plus de 3 à 10 4 pour un nombre en colonne C de plus de 1 à 3 5 pour un nombre en colonne C de plus de 0.3 à 1 6 pour un nombre en colonne C de plus de 0.1 à 0.3 7 pour un nombre en colonne C inférieur ou égal à 0.1
Par Exemple si dans la colonne C, j'ai : 30 25 1 en colonne D on obtient : 2 2 5
Merci d'avance pour votre aide si précieuse...
newoceane2000
On 6 mai, 13:50, R1 wrote:
isabelle wrote:
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Attention, la valeur 30.5 (par exemple) risque de ne pas être bien interprétée. R1- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Effectivement R1 vient de me faire réaliser que la macro ne marchais pas à tout les coups ! J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont jusqu'à 6 chiffres après la virgule ce qui me pose donc un problème.
En reprenant la macro d'Isabelle (que j'arrive un peu mieux à comprendre que celle de daniel, vu mon niveau médiocre en vba) j'obtiens :
Sub test() For Each c In Range("C1:C" & Range("C65536").End(xlUp).Row) Select Case c Case 30, 000001 To 100: Range("D" & c.Row) = 1 Case 10, 000001 To 30: Range("D" & c.Row) = 2 Case 3, 000001 To 10: Range("D" & c.Row) = 3 Case 1, 000001 To 3: Range("D" & c.Row) = 4 Case 0.300001 To 1: Range("D" & c.Row) = 5 Case 0.100001 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next End Sub
Seulement les 4 premières lignes se transforment automatiquement en :
Sub test() Case 30, 1 To 100: Range("D" & c.Row) = 1 Case 10, 1 To 30: Range("D" & c.Row) = 2 Case 3, 1 To 10: Range("D" & c.Row) = 3 Case 1, 1 To 3: Range("D" & c.Row) = 4
et en plus la macro ne marche plus !! Pouvez vous de nouveau m'aider?
On 6 mai, 13:50, R1 <R125600_AOT...@hotmail.com> wrote:
isabelle wrote:
bonjour,
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
Select Case c
Case 31 To 100: Range("D" & c.Row) = 1
Case 11 To 30: Range("D" & c.Row) = 2
Case 4 To 10: Range("D" & c.Row) = 3
Case 2 To 3: Range("D" & c.Row) = 4
Case 0.4 To 1: Range("D" & c.Row) = 5
Case 0.2 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
End Select
Next
isabelle
Attention, la valeur 30.5 (par exemple) risque de ne pas être bien
interprétée.
R1- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Effectivement R1 vient de me faire réaliser que la macro ne marchais
pas à tout les coups !
J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont
jusqu'à 6 chiffres après la virgule ce qui me pose donc un problème.
En reprenant la macro d'Isabelle (que j'arrive un peu mieux à
comprendre que celle de daniel, vu mon niveau médiocre en vba)
j'obtiens :
Sub test()
For Each c In Range("C1:C" & Range("C65536").End(xlUp).Row)
Select Case c
Case 30, 000001 To 100: Range("D" & c.Row) = 1
Case 10, 000001 To 30: Range("D" & c.Row) = 2
Case 3, 000001 To 10: Range("D" & c.Row) = 3
Case 1, 000001 To 3: Range("D" & c.Row) = 4
Case 0.300001 To 1: Range("D" & c.Row) = 5
Case 0.100001 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
End Select
Next
End Sub
Seulement les 4 premières lignes se transforment automatiquement en :
Sub test()
Case 30, 1 To 100: Range("D" & c.Row) = 1
Case 10, 1 To 30: Range("D" & c.Row) = 2
Case 3, 1 To 10: Range("D" & c.Row) = 3
Case 1, 1 To 3: Range("D" & c.Row) = 4
et en plus la macro ne marche plus !!
Pouvez vous de nouveau m'aider?
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) Select Case c Case 31 To 100: Range("D" & c.Row) = 1 Case 11 To 30: Range("D" & c.Row) = 2 Case 4 To 10: Range("D" & c.Row) = 3 Case 2 To 3: Range("D" & c.Row) = 4 Case 0.4 To 1: Range("D" & c.Row) = 5 Case 0.2 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next
isabelle
Attention, la valeur 30.5 (par exemple) risque de ne pas être bien interprétée. R1- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Effectivement R1 vient de me faire réaliser que la macro ne marchais pas à tout les coups ! J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont jusqu'à 6 chiffres après la virgule ce qui me pose donc un problème.
En reprenant la macro d'Isabelle (que j'arrive un peu mieux à comprendre que celle de daniel, vu mon niveau médiocre en vba) j'obtiens :
Sub test() For Each c In Range("C1:C" & Range("C65536").End(xlUp).Row) Select Case c Case 30, 000001 To 100: Range("D" & c.Row) = 1 Case 10, 000001 To 30: Range("D" & c.Row) = 2 Case 3, 000001 To 10: Range("D" & c.Row) = 3 Case 1, 000001 To 3: Range("D" & c.Row) = 4 Case 0.300001 To 1: Range("D" & c.Row) = 5 Case 0.100001 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7 End Select Next End Sub
Seulement les 4 premières lignes se transforment automatiquement en :
Sub test() Case 30, 1 To 100: Range("D" & c.Row) = 1 Case 10, 1 To 30: Range("D" & c.Row) = 2 Case 3, 1 To 10: Range("D" & c.Row) = 3 Case 1, 1 To 3: Range("D" & c.Row) = 4
et en plus la macro ne marche plus !! Pouvez vous de nouveau m'aider?
Gilles MOUGNOZ
Bonjour, New Oceane
En VBA, la virgule (,) est le séparateur de liste, le point (.) est le séparateur décimal, il faut donc écrire les conditions de tes Case de cette manière:
Case 30.000001 To 100: Range("D" & c.Row) = 1 Case 10.000001 To 30: Range("D" & c.Row) = 2 Case 3.000001 To 10: Range("D" & c.Row) = 3 Case 1.000001 To 3: Range("D" & c.Row) = 4 Case 0.300001 To 1: Range("D" & c.Row) = 5 Case 0.100001 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7
C'est mieux ? -- Bonne continuation
... J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont jusqu'à 6 chiffres après la virgule ce qui me pose donc un problème. ... Seulement les 4 premières lignes se transforment automatiquement en : ... Case 30, 1 To 100: Range("D" & c.Row) = 1 ...
Bonjour, New Oceane
En VBA, la virgule (,) est le séparateur de liste, le point (.) est le
séparateur décimal, il faut donc écrire les conditions de tes Case de cette
manière:
Case 30.000001 To 100: Range("D" & c.Row) = 1
Case 10.000001 To 30: Range("D" & c.Row) = 2
Case 3.000001 To 10: Range("D" & c.Row) = 3
Case 1.000001 To 3: Range("D" & c.Row) = 4
Case 0.300001 To 1: Range("D" & c.Row) = 5
Case 0.100001 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
C'est mieux ?
--
Bonne continuation
...
J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont
jusqu'à 6 chiffres après la virgule ce qui me pose donc un problème.
...
Seulement les 4 premières lignes se transforment automatiquement en :
...
Case 30, 1 To 100: Range("D" & c.Row) = 1
...
En VBA, la virgule (,) est le séparateur de liste, le point (.) est le séparateur décimal, il faut donc écrire les conditions de tes Case de cette manière:
Case 30.000001 To 100: Range("D" & c.Row) = 1 Case 10.000001 To 30: Range("D" & c.Row) = 2 Case 3.000001 To 10: Range("D" & c.Row) = 3 Case 1.000001 To 3: Range("D" & c.Row) = 4 Case 0.300001 To 1: Range("D" & c.Row) = 5 Case 0.100001 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7
C'est mieux ? -- Bonne continuation
... J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont jusqu'à 6 chiffres après la virgule ce qui me pose donc un problème. ... Seulement les 4 premières lignes se transforment automatiquement en : ... Case 30, 1 To 100: Range("D" & c.Row) = 1 ...
newoceane2000
On 7 mai, 16:21, "Gilles MOUGNOZ" wrote:
Bonjour, New Oceane
En VBA, la virgule (,) est le séparateur de liste, le point (.) est le séparateur décimal, il faut donc écrire les conditions de tes Case de cette manière:
Case 30.000001 To 100: Range("D" & c.Row) = 1 Case 10.000001 To 30: Range("D" & c.Row) = 2 Case 3.000001 To 10: Range("D" & c.Row) = 3 Case 1.000001 To 3: Range("D" & c.Row) = 4 Case 0.300001 To 1: Range("D" & c.Row) = 5 Case 0.100001 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7
C'est mieux ? -- Bonne continuation
... J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont jusqu'à 6 chiffres après la virgule ce qui me pose donc un problè me. ... Seulement les 4 premières lignes se transforment automatiquement en : ... Case 30, 1 To 100: Range("D" & c.Row) = 1 ...- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents
Bonjour,
Merci à tous pour votre aide car grâce à vous ça marche enfin à 100% !!!
On 7 mai, 16:21, "Gilles MOUGNOZ" <gmoug...@courrierchaud.aifair>
wrote:
Bonjour, New Oceane
En VBA, la virgule (,) est le séparateur de liste, le point (.) est le
séparateur décimal, il faut donc écrire les conditions de tes Case de cette
manière:
Case 30.000001 To 100: Range("D" & c.Row) = 1
Case 10.000001 To 30: Range("D" & c.Row) = 2
Case 3.000001 To 10: Range("D" & c.Row) = 3
Case 1.000001 To 3: Range("D" & c.Row) = 4
Case 0.300001 To 1: Range("D" & c.Row) = 5
Case 0.100001 To 0.3: Range("D" & c.Row) = 6
Case Is <= 0.1: Range("D" & c.Row) = 7
C'est mieux ?
--
Bonne continuation
...
J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont
jusqu'à 6 chiffres après la virgule ce qui me pose donc un problè me.
...
Seulement les 4 premières lignes se transforment automatiquement en :
...
Case 30, 1 To 100: Range("D" & c.Row) = 1
...- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents
Bonjour,
Merci à tous pour votre aide car grâce à vous ça marche enfin à
100% !!!
En VBA, la virgule (,) est le séparateur de liste, le point (.) est le séparateur décimal, il faut donc écrire les conditions de tes Case de cette manière:
Case 30.000001 To 100: Range("D" & c.Row) = 1 Case 10.000001 To 30: Range("D" & c.Row) = 2 Case 3.000001 To 10: Range("D" & c.Row) = 3 Case 1.000001 To 3: Range("D" & c.Row) = 4 Case 0.300001 To 1: Range("D" & c.Row) = 5 Case 0.100001 To 0.3: Range("D" & c.Row) = 6 Case Is <= 0.1: Range("D" & c.Row) = 7
C'est mieux ? -- Bonne continuation
... J'ai oublié de vous précicer que dans ma colonne C, les chiffres ont jusqu'à 6 chiffres après la virgule ce qui me pose donc un problè me. ... Seulement les 4 premières lignes se transforment automatiquement en : ... Case 30, 1 To 100: Range("D" & c.Row) = 1 ...- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents
Bonjour,
Merci à tous pour votre aide car grâce à vous ça marche enfin à 100% !!!