Tableau croisé dynamique peut etre....

SPGoder

XLDnaute Occasionnel
Avant toute chose, bonjour à tous et merci de m'accueillir parmi vous.
Je ne suis pas débutant en excel, mais loin d’être un as, et coté VBA, sniffff....

voici l’idée:
Je renseigne une base de données sous excel, qui contient ID, le nom , le prénom et d’autres informations qui ne nous serviront pas dans la suite.Voici un exemple
ID- Nom - Prénom - adresse
1 - Free - Jean - Paris
2 - Gars - Yves - Pau
3 - Bout - David - Lens


je souhaite récupérer dans une autre feuille, les 3 premiere colonne, pour créer un nouveau tableau qui me servira pour rentrer des rdv.
.......... -1........- 2 .....- 3
.......... -Free - Gars -Bout
.......... -Jean - Yves - Pau
Date1 -"RDV1" -
Date2 - "RDV2" -
Date3 - "RDV3" -

Ma question est comment copier automatiquement une nouvelle entrée dans la base de donnée à la suite des colonnes du tableau de la seconde feuille
J'ai essayer avec les tableaux croisés dynamique, mais je n'y parviens pas
il me reste la solution de dire que la cellule du tableau de la seconde feuille = la cellule de la BdD, mais si je supprime une entrée de la BdD, cela met à mal le tableau, car toute les entrées de rdv ne correspondent plus.

Le fichiers joint est évidement pas terminé, je tâtonne pour tout ce qui est vba, mais j’apprends peu à peu

je vous remercie de l'aide que vous pourrez m'apporter
 

Pièces jointes

  • BdB.xlsm
    60.7 KB · Affichages: 39

Dranreb

XLDnaute Barbatruc
Bonjour.
En tout cas un ComboBoxLiées met "(vide)" dans une ComboBox pour indiquer qu'elle est bel et bien renseignée conformément à une source non renseignée. C'est en quelque sorte sa convertion perso en String de la valeur Empty, plutôt que la conversion standard en "", vu que celle ci signifie déjà ComboBox non renseignée.
Ce n'est peut être pas impossible mais je ne sais pas trop le faire, et ça ne me semble guère utile. Le plus rapide c'est de saisir systématiquement le début et non d'ouvrir directement la liste. Si vous ouvrez la liste après avoir saisi le début, elle est positionnée sur le début saisi. Faut arrêter de se laisser hypnotiser machinalement par la flèche, une ComboBox c'est avant tout une zone de saisie.
Si vous ne voulez plus que les contrôles associés s'effacent à la saisie d'un élément d'identification inexistant, ne les garnissez plus depuis le tableau des valeurs de la ligne vide (venant d'être dimensionné pour qu'il le soit). Mettez l'instruction en commentaire, au cas où ça entrainerait plus d'inconvénients que d'avantages, pour que vous puissiez la réactiver facilement.
Le calendrier s'affiche à la date du jour si le contrôle couplé à lui ne contient pas de date.
Le plus simple serait de classer de temps à autre le tableau des rendez vous sur les dates. En effet la ListBox les prend dans l'ordre où ils y sont rangés. Attention, si vous le faites depuis l'UserForm, il faut impérativement exécuter derrière CLsR.Actualiser.

Je viens de regarder autre chose: j'ai été obligé de nettoyer le CLsR après une modification ou un ajout parce que vous vous plaigniez qu'il ne se passait rien quand vous cliquiez sur le bouton Modifier. Ce qui était complètement faux, d'ailleurs, la modif était bien prise en compte, simplement on n'en voyait aucun signe à l'écran, et en particulier rien ne changeait dans la ListBox. Pour cela il fallait qu'elle soit entièrement regarnie d'après un CLsR d'abord nettoyé puis aussitôt regarni de l'ID.
Mais rien ne vous empêche de rappeler un rendez-vous de la ListBox pour en construire un nouveau du même mois (et aux mêmes horaire si vous choisissez de ne plus les effacer sur un rendez vous en voie d'ajout à une nouvelle date … c'est à dire de ne plus faire le CAsR.ValeursDepuis TVLR derrière le Redim TVLR(1 to 1, 1 To etc. qui l'initialise vide …)
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 098
Messages
2 085 265
Membres
102 844
dernier inscrit
atori2