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

macro triage

19 réponses
Avatar
robint 40
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau

10 réponses

1 2
Avatar
Charabeuh
Bonsoir,

Une piste avec cette macro.

Sub catalog()

Dim DimCurr, LigCurr, I
DimCurr = ""
LigCurr = 1

Application.ScreenUpdating = False

Sheets("BRUT").Select
'Trier le catalogue brut par dimension (croissante)
'puis par prix (décroissant)
Range("A1").CurrentRegion.Sort key1:=Range("D1"), _
Order1:=xlAscending, key2:=Range("I1"), order2:=xlDescending, _
Header:=xlYes

Sheets("CATALOGUE").Select
'effacer le catalogue final
Sheets("CATALOGUE").Cells.Clear
'copier les en-têtes du catalogue brut
'vers le catalogue final
Sheets("BRUT").Rows(1).Copy
Rows(1).Select
ActiveSheet.Paste

'Boucle sur les lignes de la feuille "BRUT"
For I = 2 To 65000
'si la dimension est vide => fin des données
'on sort de la boucle
If Trim(Sheets("BRUT").Cells(I, 4)) = "" Then Exit For
'si la dimension de la ligne en cours est différente
'de celle qu'on est entrain de traiter
'on saute une ligne, on mémorise la nouvelle dimension
'on inscrit la nouvelle dimension et on la met en gras
If Trim(Sheets("BRUT").Cells(I, 4)) <> DimCurr Then
DimCurr = Trim(Sheets("BRUT").Cells(I, 4))
LigCurr = LigCurr + 2
Cells(LigCurr, 2) = DimCurr
Cells(LigCurr, 2).Font.Bold = True
End If
'On passe à la ligne suivante pour copier
'la ligne de données brutes sur le catalogue
LigCurr = LigCurr + 1
Sheets("BRUT").Rows(I).Copy
Rows(LigCurr).Select
ActiveSheet.Paste
Next I

Application.ScreenUpdating = False

End Sub

voir ici:
http://www.cijoint.fr/cjlink.php?file=cj200906/cijDioBL5F.xls






"robint 40" a écrit dans le message de
news:
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la
présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer
d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour
m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau


Avatar
MichDenis
Bonjour Robint 40,

Essaie ceci : http://cjoint.com/?gBcRSdWNHm



"robint 40" a écrit dans le message de groupe de
discussion :
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau
Avatar
MichDenis
Une petite coquille s'est glissé dans la procédure :

Vers la fin de la procédure, sur cette ligne de code :

.Offset(1, -1).Resize(DerLig, 9).Sort Key1:=.Offset(1, 7), Order1:=xlAscending,
Header:=xlNo

REMPLACE L'EXPRESION xlAscending PAR xlDescending
pour pouvoir un tri décroissant sur les prix par catégorie




"MichDenis" a écrit dans le message de groupe de discussion :
#
Bonjour Robint 40,

Essaie ceci : http://cjoint.com/?gBcRSdWNHm



"robint 40" a écrit dans le message de groupe de
discussion :
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau
Avatar
robint 40
merci encore pour le dévouement!
Vous effectuer un tri sur les dimensions et il ne devrai pas car les
dimensions sont déja trié par 13" 14" 15".... puis par largeur 155, 165, 175,
.... puis par flanc 55, 60, 65, 70..... comme le fichier que j'ai mis sur le
forum.
dans le fichier de "michdenis" je ne peut pas ajouter de colone pour le prix
vendant et coutant la macro ne les inclus pas dans sont tri.
merci encore on y est presque.

"MichDenis" a écrit :

Une petite coquille s'est glissé dans la procédure :

Vers la fin de la procédure, sur cette ligne de code :

.Offset(1, -1).Resize(DerLig, 9).Sort Key1:=.Offset(1, 7), Order1:=xlAscending,
Header:=xlNo

REMPLACE L'EXPRESION xlAscending PAR xlDescending
pour pouvoir un tri décroissant sur les prix par catégorie




"MichDenis" a écrit dans le message de groupe de discussion :
#
Bonjour Robint 40,

Essaie ceci : http://cjoint.com/?gBcRSdWNHm



"robint 40" a écrit dans le message de groupe de
discussion :
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau




Avatar
Jac
Bonjour Robint,

Deux petites questions pour une solution :

Est-ce que tu disposes du logiciel Access ?
Peux-tu me donner le chemin d'accès à ton fichier ?
Ex: C:Mes documentsMes pneuxCatalogue.xls

robint 40 a pensé très fort :
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau


Avatar
Charabeuh
avec ta clef de tri

voir:
http://www.cijoint.fr/cjlink.php?file=cj200906/cij74nwD8r.xls


"robint 40" a écrit dans le message de
news:
merci encore pour le dévouement!
Vous effectuer un tri sur les dimensions et il ne devrai pas car les
dimensions sont déja trié par 13" 14" 15".... puis par largeur 155, 165,
175,
.... puis par flanc 55, 60, 65, 70..... comme le fichier que j'ai mis sur
le
forum.
dans le fichier de "michdenis" je ne peut pas ajouter de colone pour le
prix
vendant et coutant la macro ne les inclus pas dans sont tri.
merci encore on y est presque.

"MichDenis" a écrit :

Une petite coquille s'est glissé dans la procédure :

Vers la fin de la procédure, sur cette ligne de code :

.Offset(1, -1).Resize(DerLig, 9).Sort Key1:=.Offset(1, 7),
Order1:=xlAscending,
Header:=xlNo

REMPLACE L'EXPRESION xlAscending PAR xlDescending
pour pouvoir un tri décroissant sur les prix par catégorie




"MichDenis" a écrit dans le message de groupe de
discussion :
#
Bonjour Robint 40,

Essaie ceci : http://cjoint.com/?gBcRSdWNHm



"robint 40" a écrit dans le message
de groupe de
discussion :
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut
m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la
présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer
d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai
complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour
m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau






Avatar
MichDenis
Si tu veux pas trier la colonne "dimension" de ton tableau, tu
n'as qu'à effacer cette ligne de code :

Rg.Sort Key1:=Rg(1, 4), Order1:=xlAscending, Header:=xlYes






"robint 40" a écrit dans le message de groupe de
discussion :
merci encore pour le dévouement!
Vous effectuer un tri sur les dimensions et il ne devrai pas car les
dimensions sont déja trié par 13" 14" 15".... puis par largeur 155, 165, 175,
.... puis par flanc 55, 60, 65, 70..... comme le fichier que j'ai mis sur le
forum.
dans le fichier de "michdenis" je ne peut pas ajouter de colone pour le prix
vendant et coutant la macro ne les inclus pas dans sont tri.
merci encore on y est presque.

"MichDenis" a écrit :

Une petite coquille s'est glissé dans la procédure :

Vers la fin de la procédure, sur cette ligne de code :

.Offset(1, -1).Resize(DerLig, 9).Sort Key1:=.Offset(1, 7), Order1:=xlAscending,
Header:=xlNo

REMPLACE L'EXPRESION xlAscending PAR xlDescending
pour pouvoir un tri décroissant sur les prix par catégorie




"MichDenis" a écrit dans le message de groupe de discussion :
#
Bonjour Robint 40,

Essaie ceci : http://cjoint.com/?gBcRSdWNHm



"robint 40" a écrit dans le message de groupe de
discussion :
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau




Avatar
Fredo P.
Cela devrait soulager un pneu!

http://cjoint.com/?gBrjBGb71s

Public Sub tri_et_format()
Dim i!, F!
Feuil3.Select
F = [Brut!D65536].End(3).Row - 1
Sheets("Brut").Range("A1:I" & F).Copy Destination:=[A1]
For i = F To 2 Step -1
If Cells(i, 4) <> "" And Cells(i + 1, 4) <> "" Then
If Cells(i, 4) <> Cells(i + 1, 4) Then
Rows(i + 1).Insert Shift:=xlDown
Rows(i + 1).Insert Shift:=xlDown
Cells(i + 2, 2) = Cells(i + 3, 4)
With Cells(i + 2, 2).Font
.Bold = True
.Size = 12
End With
End If
End If
Next
End Sub




"robint 40" a écrit dans le message de
news:
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la
présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer
d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour
m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau


Avatar
Fredo P.
Comme ça, ce sera NickelChrome
http://cjoint.com/?gBrwvxRc5C
Public Sub tri_et_format()
Dim i!, F!
Sheets("Catalogue").Select
F = [Brut!D65536].End(3).Row - 1
Sheets("Brut").Range("A1:I" & F + 1).Copy Destination:=[A1]
For i = F + 1 To 1 Step -1
If Cells(i, 4) <> "" And Cells(i + 1, 4) <> "" Then
If Cells(i, 4) <> Cells(i + 1, 4) Then
Rows(i + 1).Insert Shift:=xlDown
Rows(i + 1).Insert Shift:=xlDown
Cells(i + 2, 2) = Cells(i + 3, 4)
With Cells(i + 2, 2).Font
.Bold = True
.Size = 12
End With
End If
End If
Next
End Sub

"robint 40" a écrit dans le message de
news:
Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
Depuis plusieurs années je prépare un petit catalogue pour la vente de
pneus, il y a beaucoup de manipulation de donnée surtout pour la
présentation
car je doit l'imprimer en une quinzaine de copie. je vais essayer
d'inserré
un fichier qui explique un peu.
http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls

le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
première dimension la collé dans la cellule et le mettre en gras il faut
aussi trier les même dimension par le prix du plus haut au plus bas.
il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
article donc vous voyez le travail si vous avez des suggestions pour
m'aider
n'hésitez pas je vous en remercie a l'avance.

si possible documenter un peu vos interventions car les macros pour moi
c'est assez nouveau


Avatar
robint 40
MichDenis et Charabeuh grace a vous 2, deux fois par année (pneus hiver, été)
je penserer a vous, et soyez certain que ce sera positif.

j'aimerais ajouté quelque choses a la formule de MichDenis pour augmenter le
nombre de colonne dans le tri pour ajouter les prix avec escompte?
a quel endroit ou quoi modifier?

merci encore
Rt

"MichDenis" a écrit :

Si tu veux pas trier la colonne "dimension" de ton tableau, tu
n'as qu'à effacer cette ligne de code :

Rg.Sort Key1:=Rg(1, 4), Order1:=xlAscending, Header:=xlYes






"robint 40" a écrit dans le message de groupe de
discussion :
merci encore pour le dévouement!
Vous effectuer un tri sur les dimensions et il ne devrai pas car les
dimensions sont déja trié par 13" 14" 15".... puis par largeur 155, 165, 175,
..... puis par flanc 55, 60, 65, 70..... comme le fichier que j'ai mis sur le
forum.
dans le fichier de "michdenis" je ne peut pas ajouter de colone pour le prix
vendant et coutant la macro ne les inclus pas dans sont tri.
merci encore on y est presque.

"MichDenis" a écrit :

> Une petite coquille s'est glissé dans la procédure :
>
> Vers la fin de la procédure, sur cette ligne de code :
>
> .Offset(1, -1).Resize(DerLig, 9).Sort Key1:=.Offset(1, 7), Order1:=xlAscending,
> Header:=xlNo
>
> REMPLACE L'EXPRESION xlAscending PAR xlDescending
> pour pouvoir un tri décroissant sur les prix par catégorie
>
>
>
>
> "MichDenis" a écrit dans le message de groupe de discussion :
> #
> Bonjour Robint 40,
>
> Essaie ceci : http://cjoint.com/?gBcRSdWNHm
>
>
>
> "robint 40" a écrit dans le message de groupe de
> discussion :
> Bonjours a vous tous et toutes j'ai une demande si quelqu'un veut m'aider?
> Depuis plusieurs années je prépare un petit catalogue pour la vente de
> pneus, il y a beaucoup de manipulation de donnée surtout pour la présentation
> car je doit l'imprimer en une quinzaine de copie. je vais essayer d'inserré
> un fichier qui explique un peu.
> http://www.cijoint.fr/cjlink.php?file=cj200906/cijnhfyG1W.xls
>
> le premier onglet "brut" est rendu la avant la manipulation. j'ai complèté
> le travail dans l'onglet "catalogue" donc il inserré 2 lignes prendre la
> première dimension la collé dans la cellule et le mettre en gras il faut
> aussi trier les même dimension par le prix du plus haut au plus bas.
> il n'y a que quelque item dans cette exemple, en réalité ces plus de 3000
> article donc vous voyez le travail si vous avez des suggestions pour m'aider
> n'hésitez pas je vous en remercie a l'avance.
>
> si possible documenter un peu vos interventions car les macros pour moi
> c'est assez nouveau
>
>



1 2