Création automatique de lignes en fonction d'informations dans des colonnes

Bonjour,

J'aimerais, si cela est possible, avoir l'opération automatique suivante :

Sur la feuille 1 :

  • Dans la colonne 1 sera positionné un nom
  • Dans la colonne 2 sera positionné une couleur en texte (rouge, vert, ect...)
  • Dans la colonne 3 sera positionné un numéro d'épaisseur

La macro consistera alors, lorsque je clique sur un bouton, à créer automatiquement des lignes dans la feuilles 2 du document.

Ces lignes doivent :

  • Avoir le même nom que la colonne 1 de la feuille 1
  • Avoir la couleur indiquée dans la colonne 2 de la feuille 1
  • Avoir la même épaisseur indiquée dans la colonne 3 de la feuille 1

Il faut également que je puisse retrouver en temps réel, les dimensions de ces lignes en colonne 4 et 5 de la feuille 1.

Enfin, si j'appuie à nouveau sur le bouton, celui-ci doit mettre à jour les formes, éventuellement rajouter ou supprimer en fonctionne des données dans la colonne 1.

10exemple.xlsx (18.23 Ko)

Je sais que c'est un peu spécial.. Je suis évidement entièrement disponible si vous avez des questions supplémentaires.

Merci d'avance.

Bonjour,

Voici un premier test pour ma part,

J'attend ton retour,

Edit : J'ai fait une petite mise à jour pour que les lignes aient le nom souhaité.

Girodo,

38exemple-lignes.xlsm (27.17 Ko)

Bonjour Girodo,

Tout d'abord, merci pour ta réponse ! Il y a quasiment toutes les choses que je voulais !

Il manque simplement deux éléments :

  • Le nom de la figure créé doit prendre le nom de l'information dans la colonne 1 (exemple : A, B, C, ect..). Actuellement, c'est "Straight Arrow Connector 42, 43, etc...)
  • Avoir en temps réel les deux dimensions de la ligne (width et height). Donc si j'agrandis la ligne, les données des colonnes 4 et 5 doivent changer automatiquement et me donner les dimensions.

Si j'ai ça, ca sera vraiment génial dans l'automatisation de mon fichier.

Merci d'avance !!

Pour le nom, j'ai déjà corrigé avant que tu le demandes :p

(voir le petit edit sur mon message précédent)

Et concernant ta seconde demande je ne comprend pas bien...

width et height, je traduis par largeur et hauteur. Quelle différence fais tu entre les 2 pour une ligne ???

Girodo,

Ahhh top merci !

Oui je vois ce que tu veux dire... Dans Excel, je ne pense pas que tu sais directement avoir la longueur de la ligne, il considère que c'est une forme et te donne une hauteur + largeur :

ligne taille

Tu vois ce que je veux dire ? Je comptais calculer l'hypothénus avec ces deux cotés.

Merci !!

Hum je comprend mieux,

Si on simplifie en disant que les lignes seront toujours horizontales ? la hauteur sera donc toujours de 0 et donc la longueur du trait sera égale à la largeur non ? C'est trop simplificateur pour toi ?

Girodo,

Effectivement, je vois ce que tu veux dire.

Le soucis c'est que je vais par la suite faire bouger ces lignes dans n'importe quelle direction... Tu peux toujours essayer mais je pense que c'est plus simple d'avoir les deux valeurs et de calculer l'hypothènus avec une simple formule hors VBA.

J'ai une autre remarque. je vois que lorsque je clique sur le bouton qui lance le code, toutes les lignes reprennent leur position initiale.

Il n'est pas possible de modifier uniquement les lignes qui ont reçues une modification ? (que ce soit par le nom, la couleur ou l'épaisseur...)

Je sais que ca devient un peu compliqué, mais le soucis c'est que par la suite je vais avoir une centaine de ligne que je vais positionner. Si j'en rajoute juste une, je vais devoir TOUTES les remettres en place et c'est assez dommage..

Merci pour ton aide !

Hum oui là ça devient très compliqué car je suis parti du principe qu"à chaque MAJ je supprime toutes les lignes et je les re-créé... il faudrait venir tester si quelque chose à bougé pour chacune d'entre elle... C'est BEAUCOUP plus compliqué !

Sachant que je débute avec les shapes (objet au dessus des feuilles Excel tels que les lignes tracées par VBA). Je n'avais jamais eu l'occasion de m'en servir avant de me pencher dessus pour ta question.

Girodo,

Autre remarque si tu compte bouger les traits par la suite c'est 4 données qu'il faudrait retenir : Xdépart, Ydépart, Xfin, Yfin pour chaque trait. et non pas seulement Hauteur/Largeur.

Girodo,

Je suis conscient que ce n’est pas simple..

Je vais toujours essayer de m’en sortir comme ça et de réaliser quelques modifications si besoin est !

Vraiment un tout grand merci pour ton aide en tout cas.

Bonne soirée !

Mais que je reprenne, désolé mais faire une seconde macro n’est pas possible pour avoir la longueur correspondante ? Avec un second bouton ?

C’est assez critique dans mon travail...

Rechercher des sujets similaires à "creation automatique lignes fonction informations colonnes"