Bonjour
J'aimerais une aide pour résoudre ce problème :
Soit, dans un tableau, une colonne par exemple : EXO DER ZET SDZ FCV DET ZAM
MPO .....
Je veux une macro qui trie cette colonne et le tableau qui va avec par ordre
alphabétique (ca, je sais à peu près) et qui, à chaque changement de
première lettre mette en gras (par exemple) la bordure inférieure de la
ligne (Afin d'ajouter une meilleure lisibilité du tableau)
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
Philippe.R
Bonsoir Gil, Cette procédure, dans un module ordinaire, devrait le faire :
Sub MarquAZ() 'MPFE le 13/10/2003 par Philippe Raulet ' Dim lg As Long ' Columns("A:C").Select Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal For lg = 20 To 2 Step -1 Cells(lg, 1).Select If Left(Cells(lg - 1, 1).Value, 1) <> Left(Cells(lg, 1).Value, 1) Then With Cells(lg, 1).Borders(xlEdgeTop) .LineStyle = xlContinuous .Weight = xlThick .ColorIndex = xlAutomatic End With Else Cells(lg, 1).Borders(xlEdgeTop).LineStyle = xlNone End If Next lg End Sub -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002
"gil" a écrit dans le message de news:bmevsa$d3d$
Bonjour J'aimerais une aide pour résoudre ce problème : Soit, dans un tableau, une colonne par exemple : EXO DER ZET SDZ FCV DET ZAM MPO ..... Je veux une macro qui trie cette colonne et le tableau qui va avec par ordre alphabétique (ca, je sais à peu près) et qui, à chaque changement de première lettre mette en gras (par exemple) la bordure inférieure de la ligne (Afin d'ajouter une meilleure lisibilité du tableau)
Bonsoir Gil,
Cette procédure, dans un module ordinaire, devrait le faire :
Sub MarquAZ()
'MPFE le 13/10/2003 par Philippe Raulet
'
Dim lg As Long
'
Columns("A:C").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
For lg = 20 To 2 Step -1
Cells(lg, 1).Select
If Left(Cells(lg - 1, 1).Value, 1) <> Left(Cells(lg, 1).Value, 1) Then
With Cells(lg, 1).Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThick
.ColorIndex = xlAutomatic
End With
Else
Cells(lg, 1).Borders(xlEdgeTop).LineStyle = xlNone
End If
Next lg
End Sub
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gil" <gil.meray@wanadoo.fr> a écrit dans le message de news:bmevsa$d3d$1@news-reader5.wanadoo.fr...
Bonjour
J'aimerais une aide pour résoudre ce problème :
Soit, dans un tableau, une colonne par exemple : EXO DER ZET SDZ FCV DET ZAM
MPO .....
Je veux une macro qui trie cette colonne et le tableau qui va avec par ordre
alphabétique (ca, je sais à peu près) et qui, à chaque changement de
première lettre mette en gras (par exemple) la bordure inférieure de la
ligne (Afin d'ajouter une meilleure lisibilité du tableau)
Bonsoir Gil, Cette procédure, dans un module ordinaire, devrait le faire :
Sub MarquAZ() 'MPFE le 13/10/2003 par Philippe Raulet ' Dim lg As Long ' Columns("A:C").Select Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal For lg = 20 To 2 Step -1 Cells(lg, 1).Select If Left(Cells(lg - 1, 1).Value, 1) <> Left(Cells(lg, 1).Value, 1) Then With Cells(lg, 1).Borders(xlEdgeTop) .LineStyle = xlContinuous .Weight = xlThick .ColorIndex = xlAutomatic End With Else Cells(lg, 1).Borders(xlEdgeTop).LineStyle = xlNone End If Next lg End Sub -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002
"gil" a écrit dans le message de news:bmevsa$d3d$
Bonjour J'aimerais une aide pour résoudre ce problème : Soit, dans un tableau, une colonne par exemple : EXO DER ZET SDZ FCV DET ZAM MPO ..... Je veux une macro qui trie cette colonne et le tableau qui va avec par ordre alphabétique (ca, je sais à peu près) et qui, à chaque changement de première lettre mette en gras (par exemple) la bordure inférieure de la ligne (Afin d'ajouter une meilleure lisibilité du tableau)
Jean-François Aubert
Salut gil,
Une 2 ème soluce:
- indifférent aux majuscules / minuscules - les donées en A2:Ax
Sub yy() Range("A2:A" & Range("A65536").End(xlUp).Row).Select Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom Range("A1").Select Set rng = Range("A1:A" & Range("A65536").End(xlUp).Row)
For i = 65 To 90 x = Chr(i) On Error Resume Next Set y = rng.Find(What:=x, After:¬tiveCell, LookIn:=xlValues, LookAt _ :=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase _ :úlse)
z = y.Address
If Not y Is Nothing Then With Range(z).Borders(xlEdgeBottom) If Left(Range(z), 1) = Chr(i) Or Left(Range(z), 1) = Chr(i + 32) Then .LineStyle = xlContinuous .Weight = xlMedium .ColorIndex = xlAutomatic End If End With End If Next Set rng = Nothing: Set y = Nothing End Sub
-- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"gil" a écrit dans le message de news:bmevsa$d3d$
Bonjour J'aimerais une aide pour résoudre ce problème : Soit, dans un tableau, une colonne par exemple : EXO DER ZET SDZ FCV DET ZAM MPO ..... Je veux une macro qui trie cette colonne et le tableau qui va avec par ordre alphabétique (ca, je sais à peu près) et qui, à chaque changement de première lettre mette en gras (par exemple) la bordure inférieure de la ligne (Afin d'ajouter une meilleure lisibilité du tableau)
Salut gil,
Une 2 ème soluce:
- indifférent aux majuscules / minuscules
- les donées en A2:Ax
Sub yy()
Range("A2:A" & Range("A65536").End(xlUp).Row).Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("A1").Select
Set rng = Range("A1:A" & Range("A65536").End(xlUp).Row)
For i = 65 To 90
x = Chr(i)
On Error Resume Next
Set y = rng.Find(What:=x, After:¬tiveCell, LookIn:=xlValues, LookAt _
:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase _
:úlse)
z = y.Address
If Not y Is Nothing Then
With Range(z).Borders(xlEdgeBottom)
If Left(Range(z), 1) = Chr(i) Or Left(Range(z), 1) = Chr(i + 32) Then
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = xlAutomatic
End If
End With
End If
Next
Set rng = Nothing: Set y = Nothing
End Sub
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"gil" <gil.meray@wanadoo.fr> a écrit dans le message de news:bmevsa$d3d$1@news-reader5.wanadoo.fr...
Bonjour
J'aimerais une aide pour résoudre ce problème :
Soit, dans un tableau, une colonne par exemple : EXO DER ZET SDZ FCV DET ZAM
MPO .....
Je veux une macro qui trie cette colonne et le tableau qui va avec par ordre
alphabétique (ca, je sais à peu près) et qui, à chaque changement de
première lettre mette en gras (par exemple) la bordure inférieure de la
ligne (Afin d'ajouter une meilleure lisibilité du tableau)
- indifférent aux majuscules / minuscules - les donées en A2:Ax
Sub yy() Range("A2:A" & Range("A65536").End(xlUp).Row).Select Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom Range("A1").Select Set rng = Range("A1:A" & Range("A65536").End(xlUp).Row)
For i = 65 To 90 x = Chr(i) On Error Resume Next Set y = rng.Find(What:=x, After:¬tiveCell, LookIn:=xlValues, LookAt _ :=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase _ :úlse)
z = y.Address
If Not y Is Nothing Then With Range(z).Borders(xlEdgeBottom) If Left(Range(z), 1) = Chr(i) Or Left(Range(z), 1) = Chr(i + 32) Then .LineStyle = xlContinuous .Weight = xlMedium .ColorIndex = xlAutomatic End If End With End If Next Set rng = Nothing: Set y = Nothing End Sub
-- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"gil" a écrit dans le message de news:bmevsa$d3d$
Bonjour J'aimerais une aide pour résoudre ce problème : Soit, dans un tableau, une colonne par exemple : EXO DER ZET SDZ FCV DET ZAM MPO ..... Je veux une macro qui trie cette colonne et le tableau qui va avec par ordre alphabétique (ca, je sais à peu près) et qui, à chaque changement de première lettre mette en gras (par exemple) la bordure inférieure de la ligne (Afin d'ajouter une meilleure lisibilité du tableau)