Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2021 Créer Macro permettant d'indexer des nouveaux clients ? [Résolu]

fanou06

XLDnaute Occasionnel
Bonjour,

Dans l'onglet NbRDV je calcule le nombre de RDV du client selon les mois.
J'ai mis la formule suivante :

Code:
=SOMME((TEXTE(RDV!$B$2:$B$3000;"mmmm")=NbRDV!B$1)*(RDV!$A$2:$A$3000=NbRDV!$A2))

Elle semble fonctionner.

Par contre :
Est-il possible par une macro de mettre à jour le tableau de l'onglet NbRDV au sur et à mesure de la saisie de nouveau RDV dans l'onglet RDV ?
Et de ce fait, d'incrémenter les nouveaux noms ?

Je pensais faire ainsi :

1. BDD Clients : Une fois la mise à jour faite, copier A2:A500
2. NbRDV : Copier en A2 les cellules copiées de l'onglet BDD Clients
3. Trier A:A
4. Glisser les formules.

Macro :

Mais est-ce qu'il n'y a pas plus simple ? Et en gardant les formules ?
Car la Macro est fastidieuse.
Peut être copier la dernière ligne et copier la formule ?
Mais je pense il doit y avoir plus simple (plus propre surtout) ?


Merci.
 
Solution
Hello,
bon. y a un moment, faut arrêter de faire tout et n'importe quoi !
dans la dernière PJ que tu as mise, ce n'EST PAS celle que je t'ai donnée !!
tu n'a pas gardé les tables de la feuille BDD, la table des catégories s'appelle encore "tableau15, alors que je l'avais renommée "t_Catégories"
idem pour les mois et box

Dans la feuille "Formulaire"
tu persistes à définir les listes de validation avec du "='BDD CLIENTS'!$A:$A"
ce qui prend TOUTE la colonne.. donc avec 1 000 000 de lignes vides ==> AUCUN intérêt
moi je t'avais mis des listes de validation à base de =indirect("t_Nom") ou indirect("t_Tarifs").....

Dans la feuille "NbRDV2023"
tu persisites à mettre tes formules à base de Somme(texte.....), alors qu'il y avait des formules...

fanou06

XLDnaute Occasionnel
Ok, je me perds car du coup devant anonymiser le tableau envoyé je n'arrive pas à copier les macros.
Je pense que j'ai un soucis de structure sur l'onglet BDD.
Je vais l'effacer et le refaire.

Je te tiens au courant.
 

fanou06

XLDnaute Occasionnel
Oui, je change le nom mais ca ne le sauvegarde pas.
J'ai donc changé le nom, mais la macro maintenant indexe les nouveaux clients dans t_2023 mais j'ai perdu les formules, ça me dit mettre à jour ou pas et les formules semblent être en local :

Code:
=SOMME((TEXTE('C:\Users\borde\Desktop\Dossier Suisse\[TABLEAU_SUIVI_REGLEMENT_RDV PATIENT_2023 V6.xlsm]RDV'!$B$2:$B$2998;"mmmm")='C:\Users\borde\Desktop\Dossier Suisse\[TABLEAU_SUIVI_REGLEMENT_RDV PATIENT_2023 V6.xlsm]NbRDV2023'!B$1)*('C:\Users\borde\Desktop\Dossier Suisse\[TABLEAU_SUIVI_REGLEMENT_RDV PATIENT_2023 V6.xlsm]RDV'!$A$2:$A$2998='C:\Users\borde\Desktop\Dossier Suisse\[TABLEAU_SUIVI_REGLEMENT_RDV PATIENT_2023 V6.xlsm]NbRDV2023'!$A2))

Je pense que j'ai trop essayé de bidouiller.
On peut effacer des noms de tables ? Et Effacer des noms de tableaux ?

CTRL L ne donne rien

merci.
 

vgendron

XLDnaute Barbatruc
en retour ton fichier

1) les tables sont renommées correctement
2) les listes de validation sont ecrites correctement en faisant référénce directement aux tables "t_etat, t_Tarifs, t_typeExam......"

3) j'ai supprimé des macros qui faisaient doublon
4) j'ai réorganisé les macros dans différents modules
5) toutes les macros travaillent AVEC les tables structurées
6) comme il manque une feuille, les macros concernées n'ont pas été testées
7) j'ai simplifié ta macro pour enregistrer un RDV
8) et j'ai remis les formules dans la table t_2023
tes formules initiales font références à des colonnes entières de la feuille.. ca ne sert à rien
 

Pièces jointes

  • TABLEAU_SUIVI_REGLEMENT_RDV PATIENT_2023 V10 ESSAI ANONYME.xlsm
    270.9 KB · Affichages: 4

fanou06

XLDnaute Occasionnel
Merci, par contre je fais comment pour copier les macros de ce tableau anonymisé au définitif ?
Je fais que copier/coller ?
Car je dois renommer mes tables sur le définitif ?

Avec la macro de saisie (formulaire) erreur quand je la place dans mon nouveau tableau :

With Sheets("RDV").ListObjects("t_RDV")

J'ai pourtant renommé la plage en t_RDV


Merci beaucoup.
 

vgendron

XLDnaute Barbatruc
ou alors, tu fais le contraire..
tu copies tes données "finales" VERS les tables du fichier anonymisé

4 feuilles avec 4 tables.. ca ne fait que 4 copier coller.. ca me semble le plus simple
je pense meme qu'copier collage spécial/valeur est le mieux.. ca évitera de casser les listes de validation

et tu copies la feuille manquante vers le fichier anonymisé
 

fanou06

XLDnaute Occasionnel
Je viens d'essayer, les macros renvoient la même erreur.
Comment effacer un nom déja donné sur un tableau ? t_RDV est déja utilisé par exemple.
Et idem pour t_Clients.

En fait l'onglet garde son nom.
Ensuite je clique sur A1 pour nommer la table ? Ou non ?
Car en faisant ainsi je ne peux la nommer.
Je n'arrive vraiment pas avec ces tableaux structurés. Je ne sais pas comment les renommer sur mon fichier final car des noms sont déja donnés.

Et doit on sélectionner des cellules pour nommer les tables ? Ou toute une colonne ?

Merci
 
Dernière édition:

vgendron

XLDnaute Barbatruc
pourquoi vouloir effacer les noms de tables ! il ne faut pas puisque ces noms sont utilisés dans les tables

quand tu fais tes copier coller, il ne faut copier QUE les données. pas le tableau complet

Ex pour la table "t_client" de la feuille BDD clients

dans ton fichier de travail, les noms de clients vont de A2 à A402
tu selectionnes A2:A402 (soit 400 clients)
tu fais Ctrl C

tu vas DANS le fichier anonymisé
tu cliques juste sur A2 (1ere ligne de données de la table HORS entete)
tu fais Ctrl V
les 400 clients sont copiés, et la table s'est AUTOMATIQUMENT ajustée toute seule

dans la feuille RDV, table t_RDV
tu fais la meme chose

pour la feuille nbRDV2023, table t_2023, tu fais la meme chose en ne copiant QUE la colonne Client
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…