LISTE DEROULANTE DYNAMIQUE Google Sheets (illimitée)

Поделиться
HTML-код
  • Опубликовано: 5 ноя 2024

Комментарии • 15

  • @topsheets
    @topsheets  Месяц назад +1

    Recevez une copie du fichier ici 👉🏼 tsheets.fr/77-liste-deroulante/

  • @olivierbourreau1311
    @olivierbourreau1311 Месяц назад

    Bonjour,
    Merci pour cette vidéo ! J'ai créé il y a quelques mois ou outil très similaire pour réaliser un système de suivi budgétaire. Je voulais créer un outil qui permettait de faire remonter des dépenses dans les bons budgets à partir d'un journal regroupant toutes les dépenses et que l'on remplit quotidiennement. Pour que les dépenses aillent dans les bons budgets, je leur impute des codes : c'est là que j'ai mis en place les listes déroulantes en cascade, selon des codes qui pouvaient évoluer, changer, s'agrandir (exactement comme les régions, villes, quartiers, rues... de votre exemple). Par exemple, je choisi d'abord le budget "Festival" dans une première liste en colonne A, ce qui génère sur le colonne B une seconde liste avec le nom du spectacle puis sur la colonne C une 3ème liste avec le type de dépense (transport, repas, hébergement, etc...). À noter que dans mon cas, la colonne C dépend en réalité aussi de la colonne A et non de la colonne B (ce qui est plus simple).
    J'ai procédé d'une façon très similaire à la votre en utilisant notamment les formules ARRAYFORMULA, FILTER, TRANSPOSE... et des feuilles "masquées" pour le traitement des ces données en liste.
    Toutefois j'ai un problème ! Et si vous avez la solution je vous en serais fort reconnaissant !
    Voici le problème : lorsque je suis sur mon onglet qui contient toutes les listes en cascade (celui sur lequel j'effectue ma saisi quotidienne), l'équivalent pour vous de l'onglet qui s'appelle "liste", si je veux insérer une ligne entre 2 autres lignes, ça ne fonctionne plus. En effet, la plage de référence d'une ligne continuera à être la plage de référence originellement définit au lieu de se décaler ou de s'incrémenter. Voici comment cela fonctionne plus clairement : dans votre vidéo, par exemple à 3'24", on voit que vous avez dans l'onglet "liste" en A3 "Europe" et en A4 "Amérique" ; en B3 va donc apparaitre la liste générée dans l'onglet 2ème niveau en fonction du fait vous avez sélectionné "Europe" en A3 (c'est à dire une liste de pays européen). Cela fonctionne car la plage de référence dans l'onglet 2ème niveau s'est mise à jour quand vous avez choisi le continent dans l'onglet "Liste". Et en B4 vous devez avoir une liste de pays du continent américain. Maintenant, que se passe-t-il pour vous si vous insérez une ligne entre les lignes 3 et 4 ? Pour moi, le problème devient le suivant : la nouvelle ligne 4 va "recopier" en B4 la formule présente en B3, ainsi la plage de référence qui se situera dans la nouvelle cellule B4 sera la plage de la ligne 3 de l'onglet "2e niveau" et non la plage de la ligne 4. Et j'aurais dans l'onglet liste 2 cellules avec une formule identique en B3 et B4. De plus, la formule en B5 (qui était auparavant en B4) aura toujours comme plage de référence la formule auparavant en B4 et n'aura donc pas non plus la bonne ligne de référence par rapport à l'onglet "2e niveau". Bref, tout va se décaler d'une ligne !
    Je précise que si mes formules sont assez similaires aux vôtres, il y a quelques différences et peut être dans votre cas vous parvenez à contourner ce problème. Par exemple je n'ai pas utilisé les formules "Byrow" et "Lambda". De même lorsque je créé une liste, je ne passe pas par "validation des données" mais directement par "créer une liste déroulante" puis "à partir d'une plage". Peut être que cela induit des changements 🤔. N'hésitez pas à me dire ce qu'il en est de votre côté, si par exemple vous pouvez insérer une ligne sans que ça ne pose de problème ou si vous pouvez triez différemment votre tableau (par exemple réorganiser votre tableau de l'onglet "liste" en le rangeant par ordre alphabétique de continent) ? Merci !

    • @olivierbourreau1311
      @olivierbourreau1311 Месяц назад

      Rebonjour, je n'avais pas vu que je pouvais télécharger le fichier. Je viens de le faire et je vois que le problème est en effet le même que sur ma matrice budgétaire. Si j'insère une ligne dans l'onglet "Liste", tout se décale et les listes déroulantes ne sont plus "en face" par rapport au choix initial de continent. Je vais chercher comment contourner ce problème mais si vous avez des idées je prends 😅

    • @topsheets
      @topsheets  Месяц назад

      Bonjour Olivier,
      Les listes déroulantes dépendantes peuvent être implémentées avec des formules (comme je le montre dans une poignée de vidéos), mais pour éviter le problème auquel vous faites face, je pense qu'il faut passer par Apps Script.

  • @Kristoc
    @Kristoc 3 месяца назад

    Merci

    • @topsheets
      @topsheets  3 месяца назад

      Merci pour votre commentaire. 👍

  • @hnmscreentech5680
    @hnmscreentech5680 3 месяца назад

    Magnifique, mais comment pouvait-il en être autrement de votre part ?

    • @topsheets
      @topsheets  3 месяца назад

      🤣😉 Merci 🙏

  • @zoebriois3347
    @zoebriois3347 3 месяца назад

    Bonjour
    Très interessant, par contre le cas limite où on aurait 2 éléments de seconds niveau qui correspondent à un élément de niveau 1 différent ne semble pas géré
    Par exemple
    Europe-France-region1
    Amérique-France-region2
    si on sélectionne Amérique-France on aura région1 et region2 comme proposition :/

    • @topsheets
      @topsheets  2 месяца назад

      Bonjour,
      Vous avez raison.
      La méthode que j'ai présentée est une solution avec une liste déroulante en fonction du niveau précédent (et seulement du niveau précedent).
      Elle ne prend pas en compte l'ensemble des niveaux précédents.
      Dans certains cas, ça peut être problématique. Et ça semble justement être votre cas. 😕
      Je me fais une note sur ce point et je vais vois si j'ai une solution.
      A suivre...

    • @topsheets
      @topsheets  2 месяца назад

      @zoebriois3347 j'ai publié une vidéo qui répond au cas de figure que vous avez évoqué. A retrouver ici : ruclips.net/video/EXVGH0vLtBo/видео.html

  • @krnostv5547
    @krnostv5547 2 месяца назад

    Est-il possible de faire en sorte qu'à partir d'un choix venant d'un menu déroulant, des données s'update ?
    Voici mon exemple:
    Je choisis "France" dans mon menu déroulant et les données "Nombre d'habitant", "nombre de région", "nombre de ville" ce change automatiquement.
    Je sais pas si il faut un script ou non pour ça :/

    • @topsheets
      @topsheets  2 месяца назад

      Je vois très bien ce que vous voulez dire. Cela serait vraiment utile. Mais je n'ai pas encore rencontré ce cas de figure et je n'ai pas la solution. Cela passe forcément par un script. Je n'ai pas le temps de me pencher sur ce sujet en ce moment et je suis encore un peu "juste" avec les scripts pour être capable de rapidement produire la solution. Mais je me note ce point. Peut-être que je publierai la solution dans quelques semaines...

    • @krnostv5547
      @krnostv5547 2 месяца назад

      @@topsheets merci de la réponse.
      Entre temps j'ai réussi à faire ce que je voulais et sans script pour le coup :)

    • @topsheets
      @topsheets  2 месяца назад

      @@krnostv5547 Top. 👍
      Avec Google Sheets on n'arrête pas de se contorsionner pour trouver des solutions à nos problèmes. 😆