XL pour MAC Saut de page par ordre alphabétique

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Philippepointg

XLDnaute Nouveau
Bonjour, nouveau sur ce forum, j'ai déjà pas mal parcouru à la recherche d'aides. Voici mon souci: je souhaite réaliser un tableau Excel dans lequel il faut classer la colonne B par ordre alpha. Jusque là, pas de souci, ensuite je voudrais que à chaque changement de première lettre dans la colonne B un saut de page s'insère. Autre ment dit avoir une page pour tous les A, ensuite une autre pour tous les B etc.
J'ai trouvé ici une macro mais cela ne fonctionne pas dans le sens où elle insère un saut de page à chaque ligne et pas à chaque changement de première lettre.
Je vous pets le fichier en annexe avec les 2 macros: l'une pour classer l'ordre alpha, celle-ci fonctionne très bien et l'autre pour les sauts de page. J'ai réalisé 2 boutons pour actionner ces 2 macros.
Merci pour votre aide.
 

Pièces jointes

Bonjour,

Dans la macro, si en colonne B la cellule est différente de la précédente, on insère un saut de page !

Ce qu'on veut c'est un saut de page si la première lettre de la cellule est différente de la première lettre de la cellule précédente !!

modifier le test pour qu'il porte sur la première lettre ...

VB:
 If Left(Range("B" & I).Value, 1) <>.........

A+
 
Merci, voilà ce que j'ai mis mais le résultat est le même...
Sub insertpagebreaks()
'updateby Extendoffice 20151228
Dim I As Long, J As Long
J = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
For I = J To 2 Step -1
If Left(Range("B" & I).Value, 1) <> Range("B" & I - 1).Value Then
ActiveSheet.HPageBreaks.Add Before:=Range("B" & I)
End If
Next I
End Sub
 
.../...
Ce qu'on veut c'est un saut de page si la première lettre de la cellule est différente de la première lettre de la cellule précédente !!
.../...

avec le code
VB:
If Left(Range("B" & I).Value, 1) <> Range("B" & I - 1).Value Then
vous comparez la première lettre de la cellule avec la totalité de la cellule précédente ! évidemment ça marche pas !
 
de quoi comparer la première lettre de la cellule avec la première lettre de la cellule précédente !!

vous avez l'exemple pour la première lettre de la cellule (Left(...)); pas sorcier à adapter pour la cellule précédente ??
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
582
Réponses
0
Affichages
860
D
Réponses
10
Affichages
581
Deleted member 337748
D
Retour