XL 2019 vba sur carnet d'adresse

ccia

XLDnaute Nouveau
Bonjour,
je cherche à faire un carnet d'adresse avec :
1 - saisie sur une liste grâce a un userform (clic droit sur la souris pour modif) - presque fini
2 - de cette liste extraire des feuilles par lettres alphabétique puis puis faire une impression pour obtenir un carnet papier.

le soucis, en 2 : j'ai récupérer une macro malheureusement si je dépasse plus de 10 noms sur une meme lettre "A" dans l'exemple,
le nom "A0" disparait. j'aimerais que le nom "A11" passe sur la 3éme colonnes d'adresse.

malheureusement je ne suis qu'au balbutiements du VBA et n'arrive pas à modifier la macro.

Merci d'avance
 

Pièces jointes

  • CARNET D'adresse V5.xls
    765 KB · Affichages: 11
Solution
Re

J'ai modifié un bug que tu as vu 👍

Par contre pour l'autre modif je n'ai pas validé mais explique moi à quoi ça sert ?

1642892147749.png



J'ai déjà corrigé le bug dans la version précédente et tu as fait un autre bug comme celui qui était avant .....

1642892426401.png


Modification d'un bug mineur qui empêchait de cliquer plusieurs fois de suite sur une même lettre.

J'ai modifié le fichier en conséquence, voir ma version 1.2 ;)

@Phil69970

ccia

XLDnaute Nouveau
Bonjour François,

encore merci pour votre solution.

J'ai donc étudié votre macro et j'aurais une petite question :
Si je désire qu'il y ai une nouvelle colonne d'adresse (une 4éme et même une 5 éme)

j'ai essayé plusieurs solutions (comme elseif, and....) mais cela ne marche pas.

"Next
If col = 4 Then col = 11 Elseif col = 19 Else col = 27
Loop"

comme vous pouvez le constater, j'apprends en autodidacte le vba, mais ce n'est pas évident.

merci d'avance
Antoine
 

ccia

XLDnaute Nouveau
Bonjour à tous

@ccia
Voici ma version j'ai tout revu à ma sauce pour une autre approche

*Merci de ton retour

@Phil69970
Bonjour Phil6970

Oui effectivement l'approche est complétement différente, mais très très intéressante.
tes formules vba sont complexe pour le petit padavoine que je suis.
maintenant je vais essayer de les comprendre. enfin ...

Merci beaucoup pour cette aide, aussi rapide.
Bonne soirée @+
ccia
 

Phil69970

XLDnaute Accro
Re

@ccia :

Tout mon code est commenté donc sa compréhension devrait être plus aisée ;)

Je n'ai pas touché le formulaire sauf pour le tri pour qu'il tienne compte des 2 nouvelles colonnes (adresse4 et adresse5)
Tu dois pouvoir facilement supprimer la feuille TMP et copier directement sur la feuille

tes formules vba sont complexe pour le petit padavoine que je suis.
maintenant je vais essayer de les comprendre. enfin ...

En gros et après nettoyage et préparation mon code calcule combien de lignes qu'il y a avec la lettre choisie, après ce calcul il copie le le nombre de page qu'il faut et enfin copie les données dans la feuille au bon endroit.....

@Phil69970
 

ccia

XLDnaute Nouveau
Bonjour
Tu peux aller jusqu'à 25 noms...

A+ François
Bonjour François, pour ta réponse aussi rapide.
ta macro est facile à comprendre et je peux maintenant la modifier à souhait.

maintenant il ne me reste plus qu'a saisir et imprimer
le jour ou j'ai une modification ou un nouveau nom je n'imprimerai que la page en question.

je reviens sur mon message, j'ai regardé le fichier de Phil69970, j'en ai un peu mal à la tête
mais il a une approche complètement différente mais très intéressante


Bonne soirée et encore merci
@+ antoine
 
Dernière édition:

ccia

XLDnaute Nouveau
Re

@ccia :

Tout mon code est commenté donc sa compréhension devrait être plus aisée ;)

Je n'ai pas touché le formulaire sauf pour le tri pour qu'il tienne compte des 2 nouvelles colonnes (adresse4 et adresse5)
Tu dois pouvoir facilement supprimer la feuille TMP et copier directement sur la feuille



En gros et après nettoyage et préparation mon code calcule combien de lignes qu'il y a avec la lettre choisie, après ce calcul il copie le le nombre de page qu'il faut et enfin copie les données dans la feuille au bon endroit.....

@Phil69970
j'ai commencé à regarder l'utilisation du fichier et les macro utilisées...j'ai un peu mal à la tête
j'ai repris les noms ; au lieu de A2 A3 lire AB AC ...;
lors de la feuille "A" l'ordre d'édition des noms passe passe de la page 1 à la page 2 revient page 1 ...etc
j'ai rajouté un trait pour la découpe de la feuille.

sinon félicitation, c'est exactement ce que j'attendait
excellent travail
@ccia
 

Pièces jointes

  • CARNET D'adresse V1.xlsm
    110.1 KB · Affichages: 4

Phil69970

XLDnaute Accro
Re

@ccia

1)Si tu modifies la présentation du modèle il faut le faire sur TOUTE la 1ere page car c'est celle ci qui est copier X fois en fonction du nombre de personnes ayant la même 1ere lettre (sur l'image la lettre A)

1642201922463.png


2)Si tu modifies les hauteurs de lignes ici

1642202282114.png
1642202410660.png


ou encore ici

1642202498667.png


Alors tu as cela comme résultat !!!

1642202618132.png


Et qui donne cela dans l’aperçu avant impression !!! :oops:

1642202701476.png


Pas top, non o_O


Pour répondre à ton interrogation
lors de la feuille "A" l'ordre d'édition des noms passe passe de la page 1 à la page 2 revient page 1 ...etc
j'ai rajouté un trait pour la découpe de la feuille.

Je pensais justement que cela correspondait à une seule page entière d’où la disposition avec 10 noms par feuille

1 2
3 4
5 6
7 8
9 10

Puis page suivante etc ...

J'avais un carnet d'adresse papier il y a très longtemps sur ce même principe donc cela m'a paru normal.
je vais modifier dans la version suivante pour avoir

1 6
2 7
3 8
4 9
5 10


@Phil69970
 

ccia

XLDnaute Nouveau
Re

@ccia

1)Si tu modifies la présentation du modèle il faut le faire sur TOUTE la 1ere page car c'est celle ci qui est copier X fois en fonction du nombre de personnes ayant la même 1ere lettre (sur l'image la lettre A)

Regarde la pièce jointe 1127582

2)Si tu modifies les hauteurs de lignes ici

Regarde la pièce jointe 1127583 Regarde la pièce jointe 1127584

ou encore ici

Regarde la pièce jointe 1127585

Alors tu as cela comme résultat !!!

Regarde la pièce jointe 1127586

Et qui donne cela dans l’aperçu avant impression !!! :oops:

Regarde la pièce jointe 1127587

Pas top, non o_O


Pour répondre à ton interrogation


Je pensais justement que cela correspondait à une seule page entière d’où la disposition avec 10 noms par feuille

1 2
3 4
5 6
7 8
9 10

Puis page suivante etc ...

J'avais un carnet d'adresse papier il y a très longtemps sur ce même principe donc cela m'a paru normal.
je vais modifier dans la version suivante pour avoir

1 6
2 7
3 8
4 9
5 10


@Phil69970
Bonjour Phil69970,
oui effectivement j'ai constaté que le format de la page 1 était recopier sur les autres pages.
Je me suis amuser à faire quelques modifications, pour voir si je toucher à la macro ce que ca donne.
je vais revenir en arrière et modifier la police pour que la longueur des mails un peu long passe.

Le fichier est vraiment super, c'est exactement ce que j'attendais.

si j'ai modifié la hauteur des lignes, c'est pour que la page soit calé par rapport à mon imprimante.

pour le suivi des nom par pagination, ce n'est vraiment pas grave ; il est vrai que je n'avais pas expliqué la pagination de mon carnet.

Mais franchement super fichier, encore merci

ccia
 

ccia

XLDnaute Nouveau
Bonjour Phil69970,
oui effectivement j'ai constaté que le format de la page 1 était recopier sur les autres pages.
Je me suis amuser à faire quelques modifications, pour voir si je toucher à la macro ce que ca donne.
je vais revenir en arrière et modifier la police pour que la longueur des mails un peu long passe.

Le fichier est vraiment super, c'est exactement ce que j'attendais.

si j'ai modifié la hauteur des lignes, c'est pour que la page soit calé par rapport à mon imprimante.

pour le suivi des nom par pagination, ce n'est vraiment pas grave ; il est vrai que je n'avais pas expliqué la pagination de mon carnet.

Mais franchement super fichier, encore merci
 

ccia

XLDnaute Nouveau
Re

@ccia

1)Si tu modifies la présentation du modèle il faut le faire sur TOUTE la 1ere page car c'est celle ci qui est copier X fois en fonction du nombre de personnes ayant la même 1ere lettre (sur l'image la lettre A)

Regarde la pièce jointe 1127582

2)Si tu modifies les hauteurs de lignes ici

Regarde la pièce jointe 1127583 Regarde la pièce jointe 1127584

ou encore ici

Regarde la pièce jointe 1127585

Alors tu as cela comme résultat !!!

Regarde la pièce jointe 1127586

Et qui donne cela dans l’aperçu avant impression !!! :oops:

Regarde la pièce jointe 1127587

Pas top, non o_O


Pour répondre à ton interrogation


Je pensais justement que cela correspondait à une seule page entière d’où la disposition avec 10 noms par feuille

1 2
3 4
5 6
7 8
9 10

Puis page suivante etc ...

J'avais un carnet d'adresse papier il y a très longtemps sur ce même principe donc cela m'a paru normal.
je vais modifier dans la version suivante pour avoir

1 6
2 7
3 8
4 9
5 10


@Phil69970
Bonjour Phil,
Mon travail oblige, j'ai seulement commence à remplir ma liste d'adresse et je me suis aperçu
de deux bugs :
- lorsque je clic deux fois sur la lettre "N" c'est la lettre "A" qui apparait.
- lorsque je clic deux fois sur certaines lettres aucuns noms n'apparait ("G" par exemple)

Je vous remercie d'avance pour les solutions
bonne journée
ccia
 

Phil69970

XLDnaute Accro
Bonjour @ccia

Sans tester :
Pour le point 2 Est ce que tu as des personnes avec la lettre G
Pour le point 1 il faut que je vois car c'est la passage à la 2eme colonne donc j'ai peut être laissé un bug ...

Il faut que je regarde mais cela va être juste d’ici ce WE.

De toute manière avec une nouvelle version il te suffira de faire un copier/Coller de tes noms dans la feuille "Liste"
1642765310224.png


@Phil69970