CreatorRibbonX ImageMso evolution

CreatorRibbonX ImageMso evolution 6.5+

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 !

Bonjour à Tous,
Je me suis replongé dans le "ribbon maker" de Patrick et je suis bluffé! encore merci à lui!
Je reprend une ancienne application pour y installer un ruban spécifique. J'ai réussi à faire le design voulu mais le butte sur un combobox dynamique. L'idée, on choisit une fréquence et l'on MàJ la cellule "Frequence" de la feuille en nbre de jours. Grâce au tuto de Patrick, j'ai réussi cette manip (voir PJ). Par contre je n'ai pas trouvé comment réinitialiser le combobox à l'ouverture du fichier pour mettre la valeur correspondante au contenu de ma variable (dans l'exemple mettre "1/semaine" dans combobox qui correspond à 7 da la variable "Frequence").
Cela doit être tout simple mais butte.
Merci de votre aide
 

Pièces jointes

  • ribon1.jpg
    ribon1.jpg
    65.2 KB · Affichages: 7
Bonjour à tous,
Je souhaite ajouter dans mon ribbon, des étiquettes. Pour cela j'ai voulu utiliser des "labelcontrol" par contre je constate qu'à part l'ID tout est grisé.
Est-ce normal? si oui comment y met-on un texte?
D'autre part comment à l'ouverture peut-on initialiser ces étiquettes d'un contenu d'une cellule ou le modifier en cours d'utilisation?
autre question: est-il possible d'appliquer ou de dé-appliquer le "startfromstratch" par vba?
Par avance merci
 

Pièces jointes

  • Capture d'écran 2024-08-26 080211.png
    Capture d'écran 2024-08-26 080211.png
    88.6 KB · Affichages: 9
Dernière édition:
Bonjour à tous
la version 5.0 est désormais dispo
Merci Patrick pour cette nouvelle version.
Je constate que les labels de "labelcontrol" sont accessible sur cette version. Par contre je rencontre des pbs / à la précédente version.
1ier chose très simple sa fermeture n'est plus automatique mais ce n'est pas grave
J'ai un projet en cours fait avec la 4.9.9.3.8 que j'ai chargé avec la version 5 mais à la création du sample.xls, l'onglet créé n'est pas visible. J'ai supprimé le fichier "sample" pour re-créé un autre fichier mais sans plus de succès.
Le pb est que lorsque je reprend la précédente version CréatoRribbonX cela ne fonctionne plus non plus! je suis un peu désemparé...
je met le fichier HTML de mon projet si cela peu t'aider à comprendre si j'ai fait une fausse manip, s'il y a un pb avec mon PC et W11, ou s'il y a un bug.
Par avance merci de ton aide
PS:
J'ai créé un nouveau projet ou j'ai eu l'erreur "variable objet ou varia....." lors du lancement de la création du fichier xls (voir PJ) .
suite a plusieurs essais il semble:
1) lorsque l'on ouvre la V5 et que l'on créer un projet puis le xls, le ruban est bien présent. Sans fermer la V5, si l'on re-ouvre ce même projet et que l'on recréer le xls il n'y a plus de ruban.
2) on ouvre la V5, créer un nouveau projet, un XLS => ok. on ferme la V5 puis on la réouvre pour charger le projet, j'ai fait un ajout de bouton et créer le xls => j'ai eu l'erreur mise en PJ.


HTML:
<customUI azerty="http://schemas.microsoft.com/office/2009/07/customui" onLoad="CustomUIOnLoad">
<!-- CreatorRibbonX imageMso 2023 Version 4.9.9.3.8developed BY patricktoulon -->
<!-- project Ribbon name :Gesactivite_8 -->
<ribbon startFromScratch="false">
<tabs>
<tab id="tab_1" label="GESTION D'ACTIVITE">
<group id="group_0" label="Gestion des dossiers et activités" imageMso="MeetingsToolAppointmentNewAgendaItem">
<button id="button_1" onAction="Nouveau_Dossier_Click" label="Nouveau Dossier" tag="Nouveau Dossier" size="large" imageMso="MeetingsToolAppointmentNewAgendaItem" supertip="Permet d'ajouter un nouveau dossier ou d'éditer un dossier en cours."/>
<button id="button_2" onAction="Dossiers_avec_Reliquat_Click" label="Dossiers avec Reliquat" tag="Dossiers avec Reliquat" imageMso="ErrorChecking" size="large" supertip="Liste les dossiers avec un reliquat non payé et permet d'y accéder directement, soit pour une gestion d'activité soit pour une facturation ou devis."/>
<button id="button_3" onAction="button_3_Click" label="Historique des Activités" tag="Historique des Activités" size="large" imageMso="ShareThisNotebook" supertip="Donne l'ensemble des activités d'une personne, pour des dossiers en cours ou fermés, sous condition que les éléments aient moins de deux ans."/>
</group>
<group id="group_1" label="Facturation" imageMso="MacrosGallery">
<button id="button_4" onAction="Saisie_des_Factures_Click" label="Saisie des Factures" tag="Saisie des Factures" imageMso="DatabaseSwitchboardManager" size="large" supertip="Permet la réalisation des devis ou des factures, quelles soient groupées ou non."/>
</group>
<group id="group_2" label="Gestion patientèle" imageMso="EditBusinessCard">
<button id="button_5" onAction="button_5_Click" label="Edition données Patients" tag="Edition données Patients" imageMso="EditBusinessCard" size="large" supertip="Permet l'édition des données des patients et de leurs représentants légaux sans passer par un dossier actif."/>
</group>
<group id="group_3" label="Tableau De Bord" imageMso="ChartAxesGallery">
<button id="button_6" onAction="button_6_Click" label="Export Indicateurs" tag="Export Indicateurs" size="large" imageMso="FileEmailAsPdfEmailAttachment" supertip="Réalise l'exportation au format pdf du tableau de bord."/>
</group>
<group id="group_4" label="Gestion Activités" imageMso="ManageStylesTaskPane">
<button id="button_7" onAction="button_7_Click" label="Edition des Activités" tag="Edition des Activités" size="large" imageMso="ManageStylesTaskPane" supertip="Le dossier d'un patient est composé d'une ou plusieurs activités tarifées, réalisé par le praticien. C'est ici que l'on d'ajoute, modifie où supprimer ces activités standards du praticien qui constituent les éléments de base d'un dossier."/>
</group>
<group id="group_5" label="Variables Programme" imageMso="SetupClassicOffline">
<button id="button_8" label="Edition Variables Société" tag="Edition Variables Société" size="large" onAction="button_8_Click" imageMso="DatabaseSwitchboardManager" supertip="Permet de saisir ou de faire évoluer les informations concernant la société du praticien, de ses numéros professionnels, de ses éléments bancaire ou d'email."/>
<button id="button_9" onAction="Edition_Variables_PGM_Click" label="Edition Variables PGM" tag="Edition Variables PGM" size="large" imageMso="SetupClassicOffline" supertip="Permet de faire évoluer certaines personnalisations du programme pour être au plus près des besoins du praticien."/>
</group>
<group id="group_6" label="Extraction des Bases" imageMso="DatabaseSqlServer" supertip="Permet l'exportation des différence bases de travail de ce programme. Cela donne la possibilité de réaliser des statistiques personnalisées sans risque de corrompre celles du programme.">
<menu id="menu_1" label="Exportation des bases" size="large" imageMso="DatabaseSqlServer">
<button id="button_10" onAction="button_10_Click" imageMso="ExcelSpreadsheetInsert" label="Export des activités" tag="Export des activités" supertip="Exporte la base des activités (coeur du programme)."/>
<button id="button_11" onAction="button_11_Click" imageMso="ExcelSpreadsheetInsert" label="Export des dossiers" tag="Export des dossiers" supertip="Exporte la base des dossiers."/>
<button id="button_12" onAction="button_12_Click" imageMso="ExcelSpreadsheetInsert" label="Export des devis" tag="Export des devis" supertip="Exporte la base des devis."/>
<button id="button_13" onAction="button_13_Click" imageMso="ExcelSpreadsheetInsert" label="Export des Factures" tag="Export des Factures" supertip="Exporte la base des Factures. "/>
<button id="button_14" onAction="button_14_Click" imageMso="ExcelSpreadsheetInsert" label="Export des patients" tag="Export des patients" supertip="Exporte la base des patients."/>
<button id="button_21" onAction="button_21_Click" label="Export Reps légaux" tag="Export Reps légaux" imageMso="ExcelSpreadsheetInsert" supertip="Exporte la base des représentants légaux."/>
</menu>
</group>
<group id="group_7" label="Sauvegarde du Programme" imageMso="SaveAll" supertip="Réalisation des sauvegardes de ce programme soit fréquentiel soit immédiate. ">
<button id="button_15" onAction="button_15_Click" label="Sauvegarde immédiate" tag="Sauvegarde immédiate" size="large" imageMso="SaveAndCloseConflictView" supertip="Réalise une sauvegarde immédiate de ce programme."/>
</group>
<group id="group_12" label="Frequence sauvegarde PGM" supertip="Permet de choisir une fréquence de sauvegarde automatique de ce programme. Choisir la frequence voulue dans la liste déroulante et le programme réalisera une sauvegarde lors de sa fermeture." imageMso="BuildingBlocksSaveEquation">
<labelControl id="labelControl_1" label="Choix frequence"/>
<comboBox id="comboBox_1" onChange="comboBox_1_onChange" invalidateContentOnDrop="true" getItemCount="comboBox_1_GetItemCount" getItemLabel="comboBox_1_GetItemLabel" getText="comboBox_1_GetText"/>
<labelControl id="labelControl_2" getLabel="labelControl_2_getLabel" label="Date sauvegarde"/>
</group>
<group id="group_8" label="Optimisation" imageMso="DatabaseQueryNew">
<button id="button_16" onAction="button_16_Click" label="Optimisation bases" tag="Optimisation bases" size="large" imageMso="DatabaseQueryNew" supertip="Permet de réduire les bases de travail en supprimant tous les dossiers fermés de plus de deux ans. Une sauvegarde est systématiquement faite avant et est stockée dans le dossier "sauvegarde" du répertoire de ce programme."/>
</group>
<group id="group_9" label="administrateur" imageMso="DatabasePermissionsMenu">
<button id="button_17" onAction="button_17_Click" size="large" imageMso="DatabasePermissionsMenu" label="Affichage datas PGM" tag="Affichage datas PGM" supertip="Utilisé par l'administrateur PGM"/>
</group>
<group id="group_10" label="Affichage datas PGM" imageMso="AssetSettings" getVisible="group_10_getVisible">
<button id="button_18" onAction="button_18_Click" label="Sauvegarde Data PGM" tag="Sauvegarde Data PGM" imageMso="RecordsSaveRecord" supertip="Utilisé par l'administrateur PGM pour les changements de version."/>
<button id="button_19" onAction="button_19_Click" label="Restitution Data PGM" tag="Restitution Data PGM" imageMso="RecoverUnsavedVersions" supertip="Utilisé par l'administrateur PGM pour les changements de version."/>
</group>
<group id="group_11" label="Informations" imageMso="Info">
<button id="button_20" label="Info. programme" tag="Info. programme" onAction="button_20_Click" size="large" imageMso="Info" supertip="Donne des informations sur ce programme et permet de saisir le numéro de licence pour le déverrouillage de ce programme d'essai ou lors d'un changement d'ordinateur(systématiquement redemandé dans ce cas)."/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
 

Pièces jointes

  • Capture d'écran 2024-08-29 084708.png
    Capture d'écran 2024-08-29 084708.png
    48.4 KB · Affichages: 7
  • Capture d'écran 2024-08-29 093300.png
    Capture d'écran 2024-08-29 093300.png
    18.6 KB · Affichages: 6
Dernière édition:
Bonjour à tous,
Je souhaite ajouter dans mon ribbon, des étiquettes. Pour cela j'ai voulu utiliser des "labelcontrol" par contre je constate qu'à part l'ID tout est grisé.
Est-ce normal? si oui comment y met-on un texte?
D'autre part comment à l'ouverture peut-on initialiser ces étiquettes d'un contenu d'une cellule ou le modifier en cours d'utilisation?
autre question: est-il possible d'appliquer ou de dé-appliquer le "startfromstratch" par vba?
Par avance merci
le dernier e version repond a l question du labelcontrol

le label des labelcontrol peut être effectivement initialiser avec la valeur de cellules avec le callback getlabel


le startfromscratch non par vba on ne peut pas le toucher parcontre maintenant dans la version 5 tu peux jouer avec les getvisible pour les onglet build

mais il y avait des erreurs dans ton XML
Pour afficher ce contenu, nous aurons besoin de votre consentement pour définir des cookies tiers.
Pour plus d'informations, consultez notre page sur les cookies.

Xml corrigé
XML:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<customUI azerty="http://schemas.microsoft.com/office/2009/07/customui" onLoad="CustomUIOnLoad">
    <!-- CreatorRibbonX imageMso 2023 Version 4.9.9.3.8developed BY patricktoulon -->
    <!-- project Ribbon name :Gesactivite_8 -->
    <ribbon startFromScratch="false">
        <tabs>
            <tab id="tab_1" label="GESTION D'ACTIVITE">
                <group id="group_0" label="Gestion des dossiers et activités" imageMso="MeetingsToolAppointmentNewAgendaItem">
                    <button id="button_1" onAction="Nouveau_Dossier_Click" label="Nouveau Dossier" tag="Nouveau Dossier" size="large" imageMso="MeetingsToolAppointmentNewAgendaItem" supertip="Permet d'ajouter un nouveau dossier ou d'éditer un dossier en cours."/>
                    <button id="button_2" onAction="Dossiers_avec_Reliquat_Click" label="Dossiers avec Reliquat" tag="Dossiers avec Reliquat" imageMso="ErrorChecking" size="large" supertip="Liste les dossiers avec un reliquat non payé et permet d'y accéder directement, soit pour une gestion d'activité soit pour une facturation ou devis."/>
                    <button id="button_3" onAction="button_3_Click" label="Historique des Activités" tag="Historique des Activités" size="large" imageMso="ShareThisNotebook" supertip="Donne l'ensemble des activités d'une personne, pour des dossiers en cours ou fermés, sous condition que les éléments aient moins de deux ans."/>
                </group>
                <group id="group_1" label="Facturation" imageMso="MacrosGallery">
                    <button id="button_4" onAction="Saisie_des_Factures_Click" label="Saisie des Factures" tag="Saisie des Factures" imageMso="DatabaseSwitchboardManager" size="large" supertip="Permet la réalisation des devis ou des factures, quelles soient groupées ou non."/>
                </group>
                <group id="group_2" label="Gestion patientèle" imageMso="EditBusinessCard">
                    <button id="button_5" onAction="button_5_Click" label="Edition données Patients" tag="Edition données Patients" imageMso="EditBusinessCard" size="large" supertip="Permet l'édition des données des patients et de leurs représentants légaux sans passer par un dossier actif."/>
                </group>
                <group id="group_3" label="Tableau De Bord" imageMso="ChartAxesGallery">
                    <button id="button_6" onAction="button_6_Click" label="Export Indicateurs" tag="Export Indicateurs" size="large" imageMso="FileEmailAsPdfEmailAttachment" supertip="Réalise l'exportation au format pdf du tableau de bord."/>
                </group>
                <group id="group_4" label="Gestion Activités" imageMso="ManageStylesTaskPane">
                    <button id="button_7" onAction="button_7_Click" label="Edition des Activités" tag="Edition des Activités" size="large" imageMso="ManageStylesTaskPane" supertip="Le dossier d'un patient est composé d'une ou plusieurs activités tarifées, réalisé par le praticien. C'est ici que l'on d'ajoute, modifie où supprimer ces activités standards du praticien qui constituent les éléments de base d'un dossier."/>
                </group>
                <group id="group_5" label="Variables Programme" imageMso="SetupClassicOffline">
                    <button id="button_8" label="Edition Variables Société" tag="Edition Variables Société" size="large" onAction="button_8_Click" imageMso="DatabaseSwitchboardManager" supertip="Permet de saisir ou de faire évoluer les informations concernant la société du praticien, de ses numéros professionnels, de ses éléments bancaire ou d'email."/>
                    <button id="button_9" onAction="Edition_Variables_PGM_Click" label="Edition Variables PGM" tag="Edition Variables PGM" size="large" imageMso="SetupClassicOffline" supertip="Permet de faire évoluer certaines personnalisations du programme pour être au plus près des besoins du praticien."/>
                </group>
                <group id="group_6" label="Extraction des Bases" imageMso="DatabaseSqlServer" supertip="Permet l'exportation des différence bases de travail de ce programme. Cela donne la possibilité de réaliser des statistiques personnalisées sans risque de corrompre celles du programme.">
                    <menu id="menu_1" label="Exportation des bases" size="large" imageMso="DatabaseSqlServer">
                        <button id="button_10" onAction="button_10_Click" imageMso="ExcelSpreadsheetInsert" label="Export des activités" tag="Export des activités" supertip="Exporte la base des activités (coeur du programme)."/>
                        <button id="button_11" onAction="button_11_Click" imageMso="ExcelSpreadsheetInsert" label="Export des dossiers" tag="Export des dossiers" supertip="Exporte la base des dossiers."/>
                        <button id="button_12" onAction="button_12_Click" imageMso="ExcelSpreadsheetInsert" label="Export des devis" tag="Export des devis" supertip="Exporte la base des devis."/>
                        <button id="button_13" onAction="button_13_Click" imageMso="ExcelSpreadsheetInsert" label="Export des Factures" tag="Export des Factures" supertip="Exporte la base des Factures. "/>
                        <button id="button_14" onAction="button_14_Click" imageMso="ExcelSpreadsheetInsert" label="Export des patients" tag="Export des patients" supertip="Exporte la base des patients."/>
                        <button id="button_21" onAction="button_21_Click" label="Export Reps légaux" tag="Export Reps légaux" imageMso="ExcelSpreadsheetInsert" supertip="Exporte la base des représentants légaux."/>
                    </menu>
                </group>
                <group id="group_7" label="Sauvegarde du Programme" imageMso="SaveAll" supertip="Réalisation des sauvegardes de ce programme soit fréquentiel soit immédiate. ">
                    <button id="button_15" onAction="button_15_Click" label="Sauvegarde immédiate" tag="Sauvegarde immédiate" size="large" imageMso="SaveAndCloseConflictView" supertip="Réalise une sauvegarde immédiate de ce programme."/>
                </group>
                <group id="group_12" label="Frequence sauvegarde PGM" supertip="Permet de choisir une fréquence de sauvegarde automatique de ce programme. Choisir la frequence voulue dans la liste déroulante et le programme réalisera une sauvegarde lors de sa fermeture." imageMso="BuildingBlocksSaveEquation">
                    <labelControl id="labelControl_1" label="Choix frequence"/>
                    <comboBox id="comboBox_1" onChange="comboBox_1_onChange" invalidateContentOnDrop="true" getItemCount="comboBox_1_GetItemCount" getItemLabel="comboBox_1_GetItemLabel" getText="comboBox_1_GetText"/>
                    <button id="button_22" label="Date de Sauvegarde" tag="Date de Sauvegarde"/>
                </group>
                <group id="group_8" label="Optimisation" imageMso="DatabaseQueryNew">
                    <button id="button_16" onAction="button_16_Click" label="Optimisation bases" tag="Optimisation bases" size="large" imageMso="DatabaseQueryNew" supertip="Permet de réduire les bases de travail en supprimant tous les dossiers fermés de plus de deux ans. Une sauvegarde est systématiquement faite avant et est stockée dans le dossier sauvegarde du répertoire de ce programme"/>
                </group>
                <group id="group_9" label="administrateur" imageMso="DatabasePermissionsMenu">
                    <button id="button_17" onAction="button_17_Click" size="large" imageMso="DatabasePermissionsMenu" label="Affichage datas PGM" tag="Affichage datas PGM" supertip="Utilisé par l'administrateur PGM"/>
                </group>
                <group id="group_10" label="Affichage datas PGM" imageMso="AssetSettings" getVisible="group_10_getVisible">
                    <button id="button_18" onAction="button_18_Click" label="Sauvegarde Data PGM" tag="Sauvegarde Data PGM" imageMso="RecordsSaveRecord" supertip="Utilisé par l'administrateur PGM pour les changements de version."/>
                    <button id="button_19" onAction="button_19_Click" label="Restitution Data PGM" tag="Restitution Data PGM" imageMso="RecoverUnsavedVersions" supertip="Utilisé par l'administrateur PGM pour les changements de version."/>
                </group>
                <group id="group_11" label="Informations" imageMso="Info">
                    <button id="button_20" label="Info. programme" tag="Info. programme" onAction="button_20_Click" size="large" imageMso="Info" supertip="Donne des informations sur ce programme et permet de saisir le numéro de licence pour le déverrouillage de ce programme d'essai ou lors d'un changement d'ordinateur(systématiquement redemandé dans ce cas)."/>
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>
 

Pièces jointes

Un grand merci à toi pour toute ton aide et du temps passé. En effet je voulais mettre un titre au dessus de la combobox et une étiquette en dessous (qui recevrait une variable date) d'où mon erreur! C'est la 1iere fois que je me lance dans l'exercice d'une barre de menu et je ne me serais jamais lancer sans ton outil magique.
Encore Merci!
 
@JPaul78
voila ton classeur avec le ruban
j'ai mis les callback par les label (ce qui rend plus facile a identifier quel bouton va avec quel label
je t'ai mis la date dynamique en dessous la combo
tu peux la changer a tout moment avec la sub changedate

avais tu compris le switch pour le onAction (id+"_Click" ou label +"_click")
c'est ce qui permet de mieux cibler les events dans le code
 

Pièces jointes

@JPaul78
voila ton classeur avec le ruban
j'ai mis les callback par les label (ce qui rend plus facile a identifier quel bouton va avec quel label
je t'ai mis la date dynamique en dessous la combo
tu peux la changer a tout moment avec la sub changedate

avais tu compris le switch pour le onAction (id+"_Click" ou label +"_click")
c'est ce qui permet de mieux cibler les events dans le code
Grand merci à toi! je vais étudier tout cela pour bien comprendre la philosophie 🙂
 
Bravo l'artiste ! 👍👍👍
Tu mérités bien le titre de Chevalier de la Légion XLD dont voici le Ribbon Ruban, à agrafer à ta boutonnière
1736105087087.png

Quel boulot ! L'appli et les vidéos.
Je prends le train en marche, il roule depuis quelques années et te fais part d'une première suggestion (je l'ai téléchargé seulement aujourd'hui).
Cela concerne la sélection des images où tu as fait le choix (le plus évident) d'utiliser comme critère le début du nom de l'image.
Je ne sais pas si tu as eu des retours sur ce point, mais il aurait été plus facile pour l'utilisateur (pas le concepteur) d'avoir un filtre fonctionnel, Je m'explique :
Dans la feuille Liste, si j'ai bien compris, tu affiches en colonne A, la liste des imagesMso disponibles sur le PC. Elles sont triées par nom, ce qui facilite évidemment la sélection dans ton UserForm.
On affecte pour chaque image (colonne A) de la feuille Liste un critère de regroupement fonctionnel en colonne B.
Dans le UserForm tu remplaces les Boutons A, B, C ... Z par une Liste déroulante des critères de regroupement.
Par exemple dans l'extrait ci-dessous du fichier excelcontrols, en Mettant en colonne B "Police" (une reformulation de la valeur "GroupFont" de la colonne "Group/Context Menu Name" du fichier.
Ce fichier est l'un des 35 fichiers contenus dans le Office2013FluentUserInterfaceControlIdentifiers.zip que tu dois certainement connaitre.

Un grand merci pour ce partage.🤩

1736106836777.png
 
bonjour @crocrocromeilleurs veux pour cette nouvelle année
merci pour ton retour
je pense que c'est une idée interssante
il y a deja le moteur de recherche aussi je ne sais pas si tu la vu je les ai ces 13 fichiers
ma liste est une compilation de 2007 à 2021

mais oserais dire que tu n'a encore rien vu la version 5.3 sort ces jours ci je suis en train de refaire video par vidéo
allez en exclu un petit appercu
1736109050383.png

demo1.gif
 
Excellente nouvelle année 2025 Patrick! Tu nous met l'eau à la bouche avec ces nouvelles versions! J'ai hâte d'installer cette version 5.3 pour voir les nouveautés sur le startfromsratch et le save ribbon car pour debugger mon programme je faisait la sauvegarde des callbacks en manuel et la réintroduisait après le travail fait sur le programme.
Merci pour ce travail titanesque.
 
- 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
Retour