Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Créer une forme depuis plage sélectionnée

Etxezarreta

XLDnaute Nouveau
Bonjour,
Je souhaite créer une forme:
- je sélectionne une ligne dans une feuille avec msgbox
- la sélection est mise sous forme de variable tableau et transposée
- on crée une shape avec .addshape
- chaque valeur de la ligne sélectionnée s'inscrit dans la forme, avec un renvoi à la ligne entre deux valeurs

J'ai crée les variables tableaux et la forme, mais je fais du sur-place pour la suite.
Merci de vos suggestions!
Etxe.
 

Pièces jointes

  • EssaiCreationTextBoxTexteAlaLigne.xlsm
    18.3 KB · Affichages: 8

Paf

XLDnaute Barbatruc
Bonjour,

Ah !! voila des noms de variables qui précisent bien ce qu'elles représentent !!

Mais ... ne facilitent pas la lecture du code ...

un essai en deux étapes :
initialisation d'une variable avec le contenu du tableau transposé (le tableau non transposé aurait fait l'affaire en utilisant les indices à l'inverse)
création de la form avec "collage" de la variable précédente et mise en forme:


VB:
'*** initialisation variable texte
   For i = LBound(arrTransposeEnregistrementsSelectionnes, 2) To UBound(arrTransposeEnregistrementsSelectionnes, 2)
        For intNumDeLifneDeLarray = LBound(arrTransposeEnregistrementsSelectionnes, 1) To UBound(arrTransposeEnregistrementsSelectionnes, 1)
            MonText = MonText & arrTransposeEnregistrementsSelectionnes(intNumDeLifneDeLarray, i) & vbLf
        Next intNumDeLifneDeLarray
    Next
'** création form
    With ActiveSheet.Shapes.AddShape(msoTextOrientationHorizontal, 242.5, 70.5, 198, 84)
        .Name = "toto" & intNumeroIncrementeDeForme
        .TextFrame.Characters.Text = MonText
        .Fill.BackColor.SchemeColor = 17
        .Fill.ForeColor.RGB = RGB(0, 128, 128)
        .Height = UBound(arrTransposeEnregistrementsSelectionnes, 2) * UBound(arrTransposeEnregistrementsSelectionnes, 1) * .TextFrame.Characters.Font.Size * 2
    End With

A+
 

Etxezarreta

XLDnaute Nouveau
Paf bonjour,
Merci beaucoup, c'est exactement ce que voulais, avec la mise ne forme en prime! je sélectionne uniquement des lignes, donc j'ai enlevé la première boucle, cela marche parfaitement.
Bonne journée.
Etxe.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…