lister des noms de feuilles et la derniere valeur d'une colonne

  • Initiateur de la discussion Initiateur de la discussion micky
  • Date de début Date de début

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 !

micky

XLDnaute Nouveau
bonjour a tous,

en 2013 vous m'avez aidé dans la conception d'un fichier de gestion commercial.
je suis arrivé au résultat en pièce jointe. le fichier en question sert de spécimen.
je reviens vers vous pour une amélioration qui ne devrais pas vraiment poser de problème.
dans ce fichier lorsque je crée un nouveau client, la macro crée une feuille au nom du client.
la colonne A représente le date du mouvement.
la B les livraisons
la C les encaissements
la D le montant total ou "encours".
j'ai créé 2 clients (client 1 et clients 2) pour l'exemple.
avec plusieurs clients, le traitements des feuilles deviens complexe et des données me manquent.

je voudrais une feuille ou je pourrais avoir le nom de tout les clients ainsi que leurs encours.
il faut donc que le vba en question énumère dans une feuille prédéfini ("clientsetcrédits") le nom de chacune des feuilles clients (situé entre les feuilles "CARTE CLIENTS" et "fin") et l'encours correspondant au montant de la dernière ligne de la colonne D de chaque feuille.

j'espère que je suis claire. avec le fichier test, ca devrais aller.
ceci m'aiderais vraiment...

je compte sur vous .
merci encore
 

Pièces jointes

Re : lister des noms de feuilles et la derniere valeur d'une colonne

merci,
j'ai reussi a adapter ton code !
aussi pour avoir la date :

Sub maj_clients()
Application.ScreenUpdating = False
nbf = ActiveWorkbook.Sheets.Count
j = 0
boucle1:
j = j + 1
If j > nbf Then GoTo finsub
If Sheets(j).Name <> "nom de la feuille" Then GoTo boucle1
Sheets("nom de la feuille").Activate
Range("A2").Select
boucle2:
j = j + 1
If j > nbf Or Sheets(j).Name = "fin" Then GoTo finsub
ActiveCell.Value = Sheets(j).Name
ActiveCell.Offset(0, 1).Value = Sheets(j).Range("D65536").End(xlUp)
ActiveCell.Offset(0, 2).Value = Sheets(j).Range("A65536").End(xlUp)
ActiveCell.Offset(1, 0).Select
GoTo boucle2
finsub:
Application.ScreenUpdating = True

End Sub


encore merci !
 
- 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
16
Affichages
702
Réponses
2
Affichages
196
Retour