Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la
région) par région sur une autre feuille mais avec un critère (si articles >
300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654
PARIS 287 78 67543 5354343
PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas
déterminer la plage qui peut être variable, de plus le critère ne serait pas
respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive
pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le
critère est respecté et ensuite passe à une autre région, une aide please.
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
Boursicot
Bonjour,
une premiere macro pour definir le nom d'une plage variable:
la macro explore ta base de données à partir de d7 va jusqu'en bas se decale de 5 à gauche et stocke le nom de ta base
Sub definition_base() ActiveWorkbook.Names.Add Name:="base", RefersTo:=Range("d7", Range("d7").End(xlDown).Offset(0, 5).Address)
End Sub
tu tries ensuite avec les clés que tu souhaites et en utilisant le nom "base"
pour selectionner les 3 premiers de chaque région, tu balayes ta base sur le critère région , A chaque changement de nom tu prends les 3 premiers (en verifiant que la région n'a pas changée) que tu colles sur ta deuxième feuille.
j'ai fait un truc un peu équivalent, voilà le code tu peux t'en inspirer.
Sub reperage_etreport() Application.ScreenUpdating = False
Sheets("Classement").Select ' remet à blanc le classement Range("c7:i100").ClearContents Sheets("resultats").Select
tri_base
i = 0 j = 0 Do While Cells(8 + i, 7).Value <> "" If Cells(8 + i, 7) <> Cells(8 + i - 1, 7) And Cells(8 + i, 7) = Cells(8 + i + 1, 7) _ And Cells(8 + i, 7) = Cells(8 + i + 2, 7) Then
' colorie les 3 premiers du club en vert ' Cells(8 + i, 7).Resize(3, 1).Select ' With Selection.Interior ' .ColorIndex = 35 ' .Pattern = xlSolid ' End With
'se place sur le premier et selectionne son club 'recopie le nom du club Cells(8 + i, 7).Select Selection.Copy
For k = 0 To 2 Cells(8 + i + k, 7).Offset(0, -2).Resize(, 2).Select 'copie sur jieme ligne 1er nom Selection.Copy Sheets("Classement").Select Cells(7 + j, 4 + 2 * k).Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks: _ False, Transpose:úlse Sheets("resultats").Select Next k j = j + 1 End If i = i + 1 Loop Sheets("Classement").Select 'etablit le classement des clubs definition_classement_clubs clt_clubs Cells(1, 1).Select clt_individuel Sheets("Classement").Select
Application.ScreenUpdating = False End Sub
"David" a écrit dans le message de news:%
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la région) par région sur une autre feuille mais avec un critère (si articles
300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654 PARIS 287 78 67543 5354343 PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas déterminer la plage qui peut être variable, de plus le critère ne serait pas
respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le critère est respecté et ensuite passe à une autre région, une aide please.
Bonjour,
une premiere macro pour definir le nom d'une plage variable:
la macro explore ta base de données à partir de d7 va jusqu'en bas se decale
de 5 à gauche et stocke le nom de ta base
Sub definition_base()
ActiveWorkbook.Names.Add Name:="base", RefersTo:=Range("d7",
Range("d7").End(xlDown).Offset(0, 5).Address)
End Sub
tu tries ensuite avec les clés que tu souhaites et en utilisant le nom
"base"
pour selectionner les 3 premiers de chaque région, tu balayes ta base sur le
critère région ,
A chaque changement de nom tu prends les 3 premiers (en verifiant que la
région n'a pas changée) que tu colles sur ta deuxième feuille.
j'ai fait un truc un peu équivalent, voilà le code tu peux t'en inspirer.
Sub reperage_etreport()
Application.ScreenUpdating = False
Sheets("Classement").Select
' remet à blanc le classement
Range("c7:i100").ClearContents
Sheets("resultats").Select
tri_base
i = 0
j = 0
Do While Cells(8 + i, 7).Value <> ""
If Cells(8 + i, 7) <> Cells(8 + i - 1, 7) And Cells(8 + i, 7) = Cells(8 + i
+ 1, 7) _
And Cells(8 + i, 7) = Cells(8 + i + 2, 7) Then
' colorie les 3 premiers du club en vert
' Cells(8 + i, 7).Resize(3, 1).Select
' With Selection.Interior
' .ColorIndex = 35
' .Pattern = xlSolid
' End With
'se place sur le premier et selectionne son club
'recopie le nom du club
Cells(8 + i, 7).Select
Selection.Copy
For k = 0 To 2
Cells(8 + i + k, 7).Offset(0, -2).Resize(, 2).Select
'copie sur jieme ligne 1er nom
Selection.Copy
Sheets("Classement").Select
Cells(7 + j, 4 + 2 * k).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks: _
False, Transpose:úlse
Sheets("resultats").Select
Next k
j = j + 1
End If
i = i + 1
Loop
Sheets("Classement").Select
'etablit le classement des clubs
definition_classement_clubs
clt_clubs
Cells(1, 1).Select
clt_individuel
Sheets("Classement").Select
Application.ScreenUpdating = False
End Sub
"David" <david.gilbert@chello.fr> a écrit dans le message de
news:%232Y9Q7ZGEHA.3880@TK2MSFTNGP09.phx.gbl...
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la
région) par région sur une autre feuille mais avec un critère (si articles
300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654
PARIS 287 78 67543 5354343
PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas
déterminer la plage qui peut être variable, de plus le critère ne serait
pas
respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive
pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le
critère est respecté et ensuite passe à une autre région, une aide please.
une premiere macro pour definir le nom d'une plage variable:
la macro explore ta base de données à partir de d7 va jusqu'en bas se decale de 5 à gauche et stocke le nom de ta base
Sub definition_base() ActiveWorkbook.Names.Add Name:="base", RefersTo:=Range("d7", Range("d7").End(xlDown).Offset(0, 5).Address)
End Sub
tu tries ensuite avec les clés que tu souhaites et en utilisant le nom "base"
pour selectionner les 3 premiers de chaque région, tu balayes ta base sur le critère région , A chaque changement de nom tu prends les 3 premiers (en verifiant que la région n'a pas changée) que tu colles sur ta deuxième feuille.
j'ai fait un truc un peu équivalent, voilà le code tu peux t'en inspirer.
Sub reperage_etreport() Application.ScreenUpdating = False
Sheets("Classement").Select ' remet à blanc le classement Range("c7:i100").ClearContents Sheets("resultats").Select
tri_base
i = 0 j = 0 Do While Cells(8 + i, 7).Value <> "" If Cells(8 + i, 7) <> Cells(8 + i - 1, 7) And Cells(8 + i, 7) = Cells(8 + i + 1, 7) _ And Cells(8 + i, 7) = Cells(8 + i + 2, 7) Then
' colorie les 3 premiers du club en vert ' Cells(8 + i, 7).Resize(3, 1).Select ' With Selection.Interior ' .ColorIndex = 35 ' .Pattern = xlSolid ' End With
'se place sur le premier et selectionne son club 'recopie le nom du club Cells(8 + i, 7).Select Selection.Copy
For k = 0 To 2 Cells(8 + i + k, 7).Offset(0, -2).Resize(, 2).Select 'copie sur jieme ligne 1er nom Selection.Copy Sheets("Classement").Select Cells(7 + j, 4 + 2 * k).Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks: _ False, Transpose:úlse Sheets("resultats").Select Next k j = j + 1 End If i = i + 1 Loop Sheets("Classement").Select 'etablit le classement des clubs definition_classement_clubs clt_clubs Cells(1, 1).Select clt_individuel Sheets("Classement").Select
Application.ScreenUpdating = False End Sub
"David" a écrit dans le message de news:%
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la région) par région sur une autre feuille mais avec un critère (si articles
300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654 PARIS 287 78 67543 5354343 PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas déterminer la plage qui peut être variable, de plus le critère ne serait pas
respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le critère est respecté et ensuite passe à une autre région, une aide please.
David
Salut,
Merci pour ton aide, mais cela me paraît compliqué, je pensé à utiliser l'outil de filtre, d'abord filtrer la colonne région, et ensuite filtré la colonne % en utilisant Top 3 et ensuite copier le résultat sur une autre feuille, mais le pb est plus difficile que prévu, car même si il m'affiche les 3 meilleurs de la première région, il ne le fait pour les suivantes... galère, galère...
"Boursicot" a écrit dans le message de news:406f21e7$0$14173$
Bonjour,
une premiere macro pour definir le nom d'une plage variable:
la macro explore ta base de données à partir de d7 va jusqu'en bas se decale
de 5 à gauche et stocke le nom de ta base
Sub definition_base() ActiveWorkbook.Names.Add Name:="base", RefersTo:=Range("d7", Range("d7").End(xlDown).Offset(0, 5).Address)
End Sub
tu tries ensuite avec les clés que tu souhaites et en utilisant le nom "base"
pour selectionner les 3 premiers de chaque région, tu balayes ta base sur le
critère région , A chaque changement de nom tu prends les 3 premiers (en verifiant que la région n'a pas changée) que tu colles sur ta deuxième feuille.
j'ai fait un truc un peu équivalent, voilà le code tu peux t'en inspirer.
Sub reperage_etreport() Application.ScreenUpdating = False
Sheets("Classement").Select ' remet à blanc le classement Range("c7:i100").ClearContents Sheets("resultats").Select
tri_base
i = 0 j = 0 Do While Cells(8 + i, 7).Value <> "" If Cells(8 + i, 7) <> Cells(8 + i - 1, 7) And Cells(8 + i, 7) = Cells(8 + i
+ 1, 7) _ And Cells(8 + i, 7) = Cells(8 + i + 2, 7) Then
' colorie les 3 premiers du club en vert ' Cells(8 + i, 7).Resize(3, 1).Select ' With Selection.Interior ' .ColorIndex = 35 ' .Pattern = xlSolid ' End With
'se place sur le premier et selectionne son club 'recopie le nom du club Cells(8 + i, 7).Select Selection.Copy
For k = 0 To 2 Cells(8 + i + k, 7).Offset(0, -2).Resize(, 2).Select 'copie sur jieme ligne 1er nom Selection.Copy Sheets("Classement").Select Cells(7 + j, 4 + 2 * k).Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks: > _
False, Transpose:úlse Sheets("resultats").Select Next k j = j + 1 End If i = i + 1 Loop Sheets("Classement").Select 'etablit le classement des clubs definition_classement_clubs clt_clubs Cells(1, 1).Select clt_individuel Sheets("Classement").Select
Application.ScreenUpdating = False End Sub
"David" a écrit dans le message de news:%
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la région) par région sur une autre feuille mais avec un critère (si articles
300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654 PARIS 287 78 67543 5354343 PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas déterminer la plage qui peut être variable, de plus le critère ne serait pas
respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive
pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le critère est respecté et ensuite passe à une autre région, une aide please.
Salut,
Merci pour ton aide, mais cela me paraît compliqué, je pensé à utiliser
l'outil de filtre, d'abord filtrer la colonne région, et ensuite filtré la
colonne % en utilisant Top 3 et ensuite copier le résultat sur une autre
feuille, mais le pb est plus difficile que prévu, car même si il m'affiche
les 3 meilleurs de la première région, il ne le fait pour les suivantes...
galère, galère...
"Boursicot" <nospam_takron@free.fr> a écrit dans le message de
news:406f21e7$0$14173$636a15ce@news.free.fr...
Bonjour,
une premiere macro pour definir le nom d'une plage variable:
la macro explore ta base de données à partir de d7 va jusqu'en bas se
decale
de 5 à gauche et stocke le nom de ta base
Sub definition_base()
ActiveWorkbook.Names.Add Name:="base", RefersTo:=Range("d7",
Range("d7").End(xlDown).Offset(0, 5).Address)
End Sub
tu tries ensuite avec les clés que tu souhaites et en utilisant le nom
"base"
pour selectionner les 3 premiers de chaque région, tu balayes ta base sur
le
critère région ,
A chaque changement de nom tu prends les 3 premiers (en verifiant que la
région n'a pas changée) que tu colles sur ta deuxième feuille.
j'ai fait un truc un peu équivalent, voilà le code tu peux t'en inspirer.
Sub reperage_etreport()
Application.ScreenUpdating = False
Sheets("Classement").Select
' remet à blanc le classement
Range("c7:i100").ClearContents
Sheets("resultats").Select
tri_base
i = 0
j = 0
Do While Cells(8 + i, 7).Value <> ""
If Cells(8 + i, 7) <> Cells(8 + i - 1, 7) And Cells(8 + i, 7) = Cells(8 +
i
+ 1, 7) _
And Cells(8 + i, 7) = Cells(8 + i + 2, 7) Then
' colorie les 3 premiers du club en vert
' Cells(8 + i, 7).Resize(3, 1).Select
' With Selection.Interior
' .ColorIndex = 35
' .Pattern = xlSolid
' End With
'se place sur le premier et selectionne son club
'recopie le nom du club
Cells(8 + i, 7).Select
Selection.Copy
For k = 0 To 2
Cells(8 + i + k, 7).Offset(0, -2).Resize(, 2).Select
'copie sur jieme ligne 1er nom
Selection.Copy
Sheets("Classement").Select
Cells(7 + j, 4 + 2 * k).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks: > _
False, Transpose:úlse
Sheets("resultats").Select
Next k
j = j + 1
End If
i = i + 1
Loop
Sheets("Classement").Select
'etablit le classement des clubs
definition_classement_clubs
clt_clubs
Cells(1, 1).Select
clt_individuel
Sheets("Classement").Select
Application.ScreenUpdating = False
End Sub
"David" <david.gilbert@chello.fr> a écrit dans le message de
news:%232Y9Q7ZGEHA.3880@TK2MSFTNGP09.phx.gbl...
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Merci pour ton aide, mais cela me paraît compliqué, je pensé à utiliser l'outil de filtre, d'abord filtrer la colonne région, et ensuite filtré la colonne % en utilisant Top 3 et ensuite copier le résultat sur une autre feuille, mais le pb est plus difficile que prévu, car même si il m'affiche les 3 meilleurs de la première région, il ne le fait pour les suivantes... galère, galère...
"Boursicot" a écrit dans le message de news:406f21e7$0$14173$
Bonjour,
une premiere macro pour definir le nom d'une plage variable:
la macro explore ta base de données à partir de d7 va jusqu'en bas se decale
de 5 à gauche et stocke le nom de ta base
Sub definition_base() ActiveWorkbook.Names.Add Name:="base", RefersTo:=Range("d7", Range("d7").End(xlDown).Offset(0, 5).Address)
End Sub
tu tries ensuite avec les clés que tu souhaites et en utilisant le nom "base"
pour selectionner les 3 premiers de chaque région, tu balayes ta base sur le
critère région , A chaque changement de nom tu prends les 3 premiers (en verifiant que la région n'a pas changée) que tu colles sur ta deuxième feuille.
j'ai fait un truc un peu équivalent, voilà le code tu peux t'en inspirer.
Sub reperage_etreport() Application.ScreenUpdating = False
Sheets("Classement").Select ' remet à blanc le classement Range("c7:i100").ClearContents Sheets("resultats").Select
tri_base
i = 0 j = 0 Do While Cells(8 + i, 7).Value <> "" If Cells(8 + i, 7) <> Cells(8 + i - 1, 7) And Cells(8 + i, 7) = Cells(8 + i
+ 1, 7) _ And Cells(8 + i, 7) = Cells(8 + i + 2, 7) Then
' colorie les 3 premiers du club en vert ' Cells(8 + i, 7).Resize(3, 1).Select ' With Selection.Interior ' .ColorIndex = 35 ' .Pattern = xlSolid ' End With
'se place sur le premier et selectionne son club 'recopie le nom du club Cells(8 + i, 7).Select Selection.Copy
For k = 0 To 2 Cells(8 + i + k, 7).Offset(0, -2).Resize(, 2).Select 'copie sur jieme ligne 1er nom Selection.Copy Sheets("Classement").Select Cells(7 + j, 4 + 2 * k).Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks: > _
False, Transpose:úlse Sheets("resultats").Select Next k j = j + 1 End If i = i + 1 Loop Sheets("Classement").Select 'etablit le classement des clubs definition_classement_clubs clt_clubs Cells(1, 1).Select clt_individuel Sheets("Classement").Select
Application.ScreenUpdating = False End Sub
"David" a écrit dans le message de news:%
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la région) par région sur une autre feuille mais avec un critère (si articles
300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654 PARIS 287 78 67543 5354343 PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas déterminer la plage qui peut être variable, de plus le critère ne serait pas
respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive
pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le critère est respecté et ensuite passe à une autre région, une aide please.
FxM
Bonjour,
A tester et adapter :
Sub test() 'copier feuil1 vers feuil2 With Sheets("Feuil1") .Range("A1:E" & .Range("A65536").End(xlUp).Row).Copy End With With Sheets("Feuil2") .Select .Range("A1").PasteSpecial xlValues
'garder les valeurs > 300 For a = .Range("A65536").End(xlUp).Row To 2 Step -1 If .Range("D" & a).Value <= 300 Then .Range("d" & a).EntireRow.Delete Next a
'enlever la région des lignes si nb > 3 For lig = .Range("A65536").End(xlUp).Row To 2 Step -1 region = .Range("A" & lig).Value nb = Application.WorksheetFunction.CountIf(.Range("A:A"),_ "=" & region) If nb > 3 Then .Range("A" & lig).Value = "" Next lig
'enlever les lignes qui ne contiennent plus de région For lig = .Range("B65536").End(xlUp).Row To 2 Step -1 If .Range("A" & lig).Value = "" Then .Range("A" _ & lig).EntireRow.Delete Next lig End With
End Sub
@+ FxM
David wrote:
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la région) par région sur une autre feuille mais avec un critère (si articles > 300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654 PARIS 287 78 67543 5354343 PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas déterminer la plage qui peut être variable, de plus le critère ne serait pas respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le critère est respecté et ensuite passe à une autre région, une aide please.
Bonjour,
A tester et adapter :
Sub test()
'copier feuil1 vers feuil2
With Sheets("Feuil1")
.Range("A1:E" & .Range("A65536").End(xlUp).Row).Copy
End With
With Sheets("Feuil2")
.Select
.Range("A1").PasteSpecial xlValues
'garder les valeurs > 300
For a = .Range("A65536").End(xlUp).Row To 2 Step -1
If .Range("D" & a).Value <= 300 Then .Range("d" & a).EntireRow.Delete
Next a
'enlever la région des lignes si nb > 3
For lig = .Range("A65536").End(xlUp).Row To 2 Step -1
region = .Range("A" & lig).Value
nb = Application.WorksheetFunction.CountIf(.Range("A:A"),_
"=" & region)
If nb > 3 Then .Range("A" & lig).Value = ""
Next lig
'enlever les lignes qui ne contiennent plus de région
For lig = .Range("B65536").End(xlUp).Row To 2 Step -1
If .Range("A" & lig).Value = "" Then .Range("A" _
& lig).EntireRow.Delete
Next lig
End With
End Sub
@+
FxM
David wrote:
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la
région) par région sur une autre feuille mais avec un critère (si articles >
300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654
PARIS 287 78 67543 5354343
PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas
déterminer la plage qui peut être variable, de plus le critère ne serait pas
respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive
pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le
critère est respecté et ensuite passe à une autre région, une aide please.
Sub test() 'copier feuil1 vers feuil2 With Sheets("Feuil1") .Range("A1:E" & .Range("A65536").End(xlUp).Row).Copy End With With Sheets("Feuil2") .Select .Range("A1").PasteSpecial xlValues
'garder les valeurs > 300 For a = .Range("A65536").End(xlUp).Row To 2 Step -1 If .Range("D" & a).Value <= 300 Then .Range("d" & a).EntireRow.Delete Next a
'enlever la région des lignes si nb > 3 For lig = .Range("A65536").End(xlUp).Row To 2 Step -1 region = .Range("A" & lig).Value nb = Application.WorksheetFunction.CountIf(.Range("A:A"),_ "=" & region) If nb > 3 Then .Range("A" & lig).Value = "" Next lig
'enlever les lignes qui ne contiennent plus de région For lig = .Range("B65536").End(xlUp).Row To 2 Step -1 If .Range("A" & lig).Value = "" Then .Range("A" _ & lig).EntireRow.Delete Next lig End With
End Sub
@+ FxM
David wrote:
Salut,
un petit cas :
j'ai un tableau que j'ai trié par région et par % décroissant :
Je voudrais créer un bouton qui me donne un podium (3 meilleurs de la région) par région sur une autre feuille mais avec un critère (si articles > 300), dans cette exemple ce serait :
PARIS 65465 87 54654 5654 PARIS 287 78 67543 5354343 PARIS 65465 87 54654 5654
Alors je sais que l'on peut utiliser Grande.Valeur mais je ne sais pas déterminer la plage qui peut être variable, de plus le critère ne serait pas respecté, mais même si j'utilisée une simple recopie de ligne, je n'arrive pas à faire en sorte qu'il ne prenne que 3 lignes de la région x si le critère est respecté et ensuite passe à une autre région, une aide please.