Comment utiliser SpecialCells(xlLastCell) avec la commande "Sort" ?
6 réponses
Gouap
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui
fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je cherche
à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne
correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1: B65536")
mais toutes mes tentatives sont regetées par Excel.
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
Tatanka
Bonjour Gouap,
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Serge
"Gouap" a écrit dans le message de news:
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row
Set ici = Range("A1:B" & j)
Serge
"Gouap" <Gouap@free.fr> a écrit dans le message de news: ero5QX8qKHA.3800@TK2MSFTNGP06.phx.gbl...
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce
que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans
devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Serge
"Gouap" a écrit dans le message de news:
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.
En tenant compte de ton code, j'ai simplifié et obtenu ça qui semble fonctionner:
Sheets("Consolidation").Select
With ActiveWorkbook.Worksheets("Consolidation").Sort .SetRange Range("A1:B" & Range("B2").SpecialCells(xlLastCell).Row) .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With
@+ Philippe
"Tatanka" a écrit dans le message de news: e%
Bonjour Gouap,
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Serge
"Gouap" a écrit dans le message de news:
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.
En tenant compte de ton code, j'ai simplifié et obtenu ça qui semble
fonctionner:
Sheets("Consolidation").Select
With ActiveWorkbook.Worksheets("Consolidation").Sort
.SetRange Range("A1:B" & Range("B2").SpecialCells(xlLastCell).Row)
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
@+
Philippe
"Tatanka" <garnote3ENLEVER@videotron.ca> a écrit dans le message de news:
e%23DQQh8qKHA.5936@TK2MSFTNGP04.phx.gbl...
Bonjour Gouap,
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row
Set ici = Range("A1:B" & j)
Serge
"Gouap" <Gouap@free.fr> a écrit dans le message de news:
ero5QX8qKHA.3800@TK2MSFTNGP06.phx.gbl...
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui
fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je
cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne
correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1:
B65536") mais toutes mes tentatives sont regetées par Excel.
En tenant compte de ton code, j'ai simplifié et obtenu ça qui semble fonctionner:
Sheets("Consolidation").Select
With ActiveWorkbook.Worksheets("Consolidation").Sort .SetRange Range("A1:B" & Range("B2").SpecialCells(xlLastCell).Row) .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With
@+ Philippe
"Tatanka" a écrit dans le message de news: e%
Bonjour Gouap,
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Serge
"Gouap" a écrit dans le message de news:
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.
> j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Je voulais écrire B1 au lieu de B2
Même principe : j = Range("A1").SpecialCells(xlLastCell).Row Set ici = Range("A1:A" & j) ...
Serge
"Tatanka" a écrit dans le message de news: e%
Bonjour Gouap,
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Serge
"Gouap" a écrit dans le message de news:
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.
> j = Range("B2").SpecialCells(xlLastCell).Row
Set ici = Range("A1:B" & j)
Je voulais écrire B1 au lieu de B2
Même principe :
j = Range("A1").SpecialCells(xlLastCell).Row
Set ici = Range("A1:A" & j)
...
Serge
"Tatanka" <garnote3ENLEVER@videotron.ca> a écrit dans le message de news: e%23DQQh8qKHA.5936@TK2MSFTNGP04.phx.gbl...
Bonjour Gouap,
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row
Set ici = Range("A1:B" & j)
Serge
"Gouap" <Gouap@free.fr> a écrit dans le message de news: ero5QX8qKHA.3800@TK2MSFTNGP06.phx.gbl...
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce
que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans
devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.
> j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Je voulais écrire B1 au lieu de B2
Même principe : j = Range("A1").SpecialCells(xlLastCell).Row Set ici = Range("A1:A" & j) ...
Serge
"Tatanka" a écrit dans le message de news: e%
Bonjour Gouap,
Ces deux instructions peuvent-elles te venir en aide ?
j = Range("B2").SpecialCells(xlLastCell).Row Set ici = Range("A1:B" & j)
Serge
"Gouap" a écrit dans le message de news:
Bonjour à tous,
Avec l'enregistreur de macro d'Excel j'obtients le code suivant qui fonctionne très bien mais qui ne tri que les ligne 1 à 32. Ce que je cherche à faire c'est à modifier ce code pour qu'il tri jusqu'à la ligne correspondant à SpecialCells(xlLastCell) sans devoir mettre ("A1: B65536") mais toutes mes tentatives sont regetées par Excel.