Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Macro filtre auto et attribution de numéro

2 réponses
Avatar
Françoise
Bonjour à tous !

J'ai besoin de l'aide avisée de nos spécialistes Excel macro.
Voici ce que je veux faire :
J'ai un tableau avec 400 ref produits différentes
ces produits ont généralement une désignation commune à plusieurs refs
la ref reprennant la catégorie du produit et un numéro d'ordre, puis le code
taille du produit
exemple :
NAT00101 = arbre
NAT00201= fleurs
NAT00302= fleurs
NAT00403= arbre
Je veux attribuer une valeur à chaque désignation commune
J'ai pensé faire une macro qui :
1 - filtre automatiquement sur la colonne DESIGNATION
2 - attribue à chaque DESIGNATION une valeur commune placée sur 3 positions
ainsi j'obtiendrai pour mon exemple :
pour toutes les refs correspondant à la désignation "arbre" la valeur 001,
et pour la désignation "fleurs" la valeur 002
Voici mon début de code :
-----------------------------------
Sub RegroupRef()
Cells.Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="africa tree"
Range("M108").Select
ActiveCell.FormulaR1C1 = "1"
Range("M108").Select
Selection.FillDown
Selection.AutoFilter Field:=2, Criteria1:="amandine"
Range("M55").Select
ActiveCell.FormulaR1C1 = "2"
Range("M55").Select
Selection.FillDown
Selection.AutoFilter Field:=2
End Sub
-----------------------------------------------
Quelqu'un peut-il m'aider ?
Mille mercis par avance
Françoise

2 réponses

Avatar
JB
Bonjour,

Sub essai()
[E1] = [B1]
[A1].CurrentRegion.AdvancedFilter Action:=xlFilterCopy,
CopyToRange:=[E1], Unique:=True
For i = 2 To [E65000].End(xlUp).Row
For j = 2 To [B65000].End(xlUp).Row
If Cells(j, 2) = Cells(i, 5) Then
Cells(j, 3).NumberFormat = "@"
Cells(j, 3) = Format(i - 1, "000")
End If
Next j
Next i
End Sub

http://cjoint.com/?iilESZ66Od

JB

On 8 août, 10:56, Françoise
wrote:
Bonjour à tous !

J'ai besoin de l'aide avisée de nos spécialistes Excel macro.
Voici ce que je veux faire :
J'ai un tableau avec 400 ref produits différentes
ces produits ont généralement une désignation commune à plusieurs refs
la ref reprennant la catégorie du produit et un numéro d'ordre, puis le code
taille du produit
exemple :
NAT00101 = arbre
NAT00201= fleurs
NAT00302= fleurs
NAT00403= arbre
Je veux attribuer une valeur à chaque désignation commune
J'ai pensé faire une macro qui :
1 - filtre automatiquement sur la colonne DESIGNATION
2 - attribue à chaque DESIGNATION une valeur commune placée sur 3 pos itions
ainsi j'obtiendrai pour mon exemple :
pour toutes les refs correspondant à la désignation "arbre" la valeur 001,
et pour la désignation "fleurs" la valeur 002
Voici mon début de code :
-----------------------------------
Sub RegroupRef()
Cells.Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="africa tree"
Range("M108").Select
ActiveCell.FormulaR1C1 = "1"
Range("M108").Select
Selection.FillDown
Selection.AutoFilter Field:=2, Criteria1:="amandine"
Range("M55").Select
ActiveCell.FormulaR1C1 = "2"
Range("M55").Select
Selection.FillDown
Selection.AutoFilter Field:=2
End Sub
-----------------------------------------------
Quelqu'un peut-il m'aider ?
Mille mercis par avance
Françoise


Avatar
Françoise
Merci beaucoup JB, ça fonctionne impec !



Bonjour,

Sub essai()
[E1] = [B1]
[A1].CurrentRegion.AdvancedFilter Action:=xlFilterCopy,
CopyToRange:=[E1], Unique:=True
For i = 2 To [E65000].End(xlUp).Row
For j = 2 To [B65000].End(xlUp).Row
If Cells(j, 2) = Cells(i, 5) Then
Cells(j, 3).NumberFormat = "@"
Cells(j, 3) = Format(i - 1, "000")
End If
Next j
Next i
End Sub

http://cjoint.com/?iilESZ66Od

JB

On 8 août, 10:56, Françoise
wrote:
Bonjour à tous !

J'ai besoin de l'aide avisée de nos spécialistes Excel macro.
Voici ce que je veux faire :
J'ai un tableau avec 400 ref produits différentes
ces produits ont généralement une désignation commune à plusieurs refs
la ref reprennant la catégorie du produit et un numéro d'ordre, puis le code
taille du produit
exemple :
NAT00101 = arbre
NAT00201= fleurs
NAT00302= fleurs
NAT00403= arbre
Je veux attribuer une valeur à chaque désignation commune
J'ai pensé faire une macro qui :
1 - filtre automatiquement sur la colonne DESIGNATION
2 - attribue à chaque DESIGNATION une valeur commune placée sur 3 positions
ainsi j'obtiendrai pour mon exemple :
pour toutes les refs correspondant à la désignation "arbre" la valeur 001,
et pour la désignation "fleurs" la valeur 002
Voici mon début de code :
-----------------------------------
Sub RegroupRef()
Cells.Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="africa tree"
Range("M108").Select
ActiveCell.FormulaR1C1 = "1"
Range("M108").Select
Selection.FillDown
Selection.AutoFilter Field:=2, Criteria1:="amandine"
Range("M55").Select
ActiveCell.FormulaR1C1 = "2"
Range("M55").Select
Selection.FillDown
Selection.AutoFilter Field:=2
End Sub
-----------------------------------------------
Quelqu'un peut-il m'aider ?
Mille mercis par avance
Françoise