IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème TextBox / Spin Button en cascade [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2021
    Messages : 12
    Par défaut Problème TextBox / Spin Button en cascade
    Bonjour à toute la communauté !

    Je me permet de solliciter une nouvelle fois votre aide pour un problème qui je le crains, n'ait pas de solution ...

    Je l'explique. J'ai une base de données décomposée en trois colonnes (voir photo en pièce jointe) : A. Préparation ; B. Fabrication ; C. Inspection
    Dans chacune de ces colonnes se trouvent plusieurs paragraphes.

    J'aimerai que l'utilisateur choisisse grâce au SpinButton n°1 le titre de la colonne (soit "A. Préparation" ou "B. Fabrication" ou "C. Inspection") et qu'il s'affiche dans la TextBox 1 ET qu'en fonction de ce choix, la TextBox2 affiche les paragraphes un par un (grâce au SpinButton n°2) correspondant à la sélection précédente.

    Exemple, si l'utilisateur choisit "A. Préparation", la textBox 2 propose en premier le paragraphe "Faites mariner les Noix de Saint-Jacques ...". Puis si ce paragraphe ne convient pas à l'utilisateur, il appuie sur le SpinButton N°2 puis un autre paragraphe s'affiche dans la TextBox2 comme " Rincez et ciselez très finement le persil" (remarque: sur le fichier excel joint, j'arrive à réaliser cette opération) . Une fois l'utilisateur ayant fait son choix de paragraphe pour le "A. Préparation", il appuie sur le bouton "Export to word" qui envoie le contenu de la TextBox2 vers un signet d'un document Word déjà ouvert.

    Puis l'utilisateur clique sur le SpinButton n°1 et choisi le "B. Fabrication ". La TextBox 2 affiche alors les paragraphes contenus dans la colonne "B.Fabrication" à savoir " à l'aide d'un couteau ..." puis s'il clique sur le Spin Button n°2, la textBox 2 affiche le paragraphe suivant " Ecrasez le beurre avec une fourchette ..." . Une fois de plus, l'utilisateur choisit le paragraphe qu'il souhaite pour ensuite l'exporter vers le document word.


    Le problème résumé est le suivant : Est-il possible d'afficher dans une textBox et grâce à un SpinButton différentes textes se trouvant sur une même ligne et qu'en fonction de ce choix, une seconde textBox (et SpinButton) propose les différents paragraphes situés dans la colonne selectionnée ?

    J'espère avoir été assez clair sur l'explication du problème. Je crains en demander trop à excel et que ce ne soit pas possible de faire ce genre d'opération.

    Je remercie d'avance chaque personne qui s'intéressera à mon problème et qui pourra me proposer une solution ou un bout de code pour faire fonctionner cette macro. A noter ici que je cherche juste à faire fonctionner les deux TextBox et SpinButton ensemble (je m'occuperai de la partie Exportation de donnée vers Word plus tard ...)

    Je vous joint une capture d'écran du problème ainsi que le classeur.

    PS : Ne tenez pas compte du contenu des paragraphes, ils sont là pour illustrer mes propos
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bilbin Voir le message
    Bonjour,

    Désolé de casser votre travail, mais si j'avais à faire cela, je remplacerais les textbox par des listbox et je ferais en sorte que la base de données soit un tableau structuré. Je n'aurais donc pas besoin des spinbouttons. Je mettrais ensuite tous ces objets dans un userform. Dans la listbox1, on aurait les 3 trois possibilités (+ si les colonnes du tableau structuré évoluent). Un clic sur un des items, on verrait apparaître les items de la colonne sélectionnée dans la listbox2.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2021
    Messages : 12
    Par défaut
    Bonjour Eric,

    Merci pour votre réponse rapide !

    Le projet sur lequel je travaille va acceuillir une importante base de données. Les paragraphes envoyées vers word vont être conséquents (plusieurs dizaines de lignes). La prévisualisation des paragraphes est donc important et il ne me semble pas que des listbox permettent d'apprécier un contenu textuel volumineux (à moins que je me trompe). C'est pour cette raison que j'avais opté pour des textBox qui peuvent afficher un par un des paragraphes importants. De plus, j'aimerai éviter d'utiliser des userform.

    Merci de m'avoir proposé cette alternative. Pensez-vous que l'option imaginée à mon premier message est réalisable ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bilbin Voir le message
    Eh bien je pense qu'en persistant dans cette voie, vous allez avoir tout faux. Le risque pour vous c'est d'avoir une grève des utilisateurs...

    Si votre base de données est importante, il vous faut gérer vos listes par mots clés à l'aide d'une recherche intuitive. Dans le cas de champs volumineux, il vaudrait mieux leur associer un champ clé dans lequel on peut logiquement en déduire le contenu. En plus des deux listbox indiquées, il vous faut un textbox pour visualiser le contenu du champ.

    Le userform est de mon point de vue utile car indépendant de vos données et le code sera transposable sur n'importe quel onglet ou fichier ayant la même structure. Si votre outil doit être diffusé sur différents sites, vous aurez la possibilité de le mettre dans une macro complémentaire et de le faire évoluer facilement.

    Bien entendu, toutes ces remarques n'engagent que moi, et personne n'est obligé d'être d'accord.

    Sinon, pour répondre strictement à votre question, la réponse est : tout est faisable.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bilbin Voir le message
    Je verrais plutôt votre outil sous cette forme. Cela change l'organisation de votre base de données.


    Pièce jointe 595408

    Le spinbutton à droite sert simplement à réordonner la liste des paragraphes retenus si l'ordre a son importance dans votre document Word.
    Pièce jointe 595409

    Nb : Mon petit doigt me dit que Pierre FAUCONNIER () va intervenir pour dire qu'il y a plus simple avec une solution Power Query

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2021
    Messages : 12
    Par défaut
    Bonjour Eric,

    Premièrement, merci de vous intéresser à ce point à mon problème !

    Deuxièmement, la solution que vous proposez me fait maintenant hésiter ! Je n'arrive plus à savoir si l'option initiale des SpinButton couplés à des TextBox est plus judicieuse ou non. Au vue de votre expérience comparé à la mienne dans la programmation VBA, elle doit l'être certainement. C'est pour cette raison que je vais quand même creuser votre proposition.

    Pensez-vous qu'il serait possible d'accéder au fichier excel qui vous a permis de faire le userform que vous avez présenté en capture ? Ayant fait peu de userform, il serait intéressant pour moi de me rendre compte du codage qu'il y a derrière pour arriver au résultat que vous avez proposé.

    De plus, le bouton exportation vers word présent sur la capture d'écran exporte juste le paragraphe présent dans la TextBox vers le document word ou il vient exporter chaque paragraphe des "cles types retenus" d'une seule traite ? Si c'est la deuxième proposition à ma question, le userform parait en effet plus séduisant d'un point de vue utilisateur mais aussi pour le codage qui en découle derrière

    Encore une fois, merci à vous pour cette aide qui enrichit mes connaissances sur excel.

    Cordialement

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bilbin Voir le message

    De plus, le bouton exportation vers word présent sur la capture d'écran exporte juste le paragraphe présent dans la TextBox vers le document word ou il vient exporter chaque paragraphe des "cles types retenus" d'une seule traite ? Si c'est la deuxième proposition à ma question, le userform parait en effet plus séduisant d'un point de vue utilisateur mais aussi pour le codage qui en découle derrière
    La ListBox Clés types retenus permettrait d'exporter dans Word en 1 seule passe.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bilbin Voir le message
    Comme suite à votre message en privé, s'il s'agit de déverser les paragraphes contenus dans la ListBoxRetenus, il vous faut instancier une session word et modifier légèrement le code de cette réponse chercher-remplacer-zone-texte

    Au lieu de faire une boucle sur des cellules dans CopierEtMettreAJourLesFichiersWord, il vous faut faire cette boucle sur la matrice dont je vous ai mis l'exemple à la fin de la procédure M02_LancerLeUserform.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VB problème Textbox
    Par Bargo dans le forum ASP.NET
    Réponses: 3
    Dernier message: 19/06/2008, 14h40
  2. Problème TextBox et valeur
    Par Yanmeunier dans le forum IHM
    Réponses: 2
    Dernier message: 30/06/2006, 19h13
  3. [FLASH 8] Problème d'affichage texte en cascade
    Par Lune_Noire dans le forum Flash
    Réponses: 7
    Dernier message: 25/06/2006, 14h50
  4. [C++.NET] problème textBox
    Par stgi02 dans le forum VC++ .NET
    Réponses: 5
    Dernier message: 25/04/2006, 11h38
  5. Réponses: 2
    Dernier message: 18/07/2005, 14h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo