VBA insérer une plage dans une zone de texte

Bonjour au forum,

Je cherche une combine pour copier du texte dans une zone de texte sans avoir à le tapé

manuellement.

https://www.excel-pratique.com/~files/doc/texte.xls

amicalement

Claude.

Bonjour Claude,

je t'envois une solution avec une zone de texte. Il faut mettre la propriété MultiLine du textbox à True sinon ça ne marchera pas

https://www.excel-pratique.com/~files/doc/lWbsetexte.xls

l'idée c'est de séparer les valeurs des cellules par un saut de ligne, code ascii 10

txtTest = Range("A1") & Chr$(10) & Range("A2") ... etc

Salut Math,

Ta solution m'intéresse, mais je comprend pas comment çà marche !

je n'ai jamais utilisé ce genre de bouton.

je ne vois pas propriété Multiline du texbox !

je ne vois pas non plus dans ton code la création de la zone texte.

et pour avoir la possibilité de déplacer le texte, comment faire ?

moi j'en étais là, mais je suis limité à 248 caractères.

Sub Macro1()
    ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 492#, 144#, _
        276#, 108#).Select
    Selection.Characters.Text = Range("a1") & Chr(10) & Range("a2") & Chr(10) & _
    Range("a3") & Chr(10) & Range("a4") & Chr(10) & Range("a5") & Chr(10) & _
    Range("a6") & Chr(10) & Range("a7") & Chr(10) & Range("a8")

    With Selection.Font
        .Name = "Times New Roman"
        .FontStyle = "Normal"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
    End With
End Sub

il y a peu-être un mélange des 2 soluces à faire !

Peut-tu développer comment çà marche ? (ta méthode)

amicalement

Claude.

Pour le textbox, j'utilise le menu affichage > barres d'outils > boite à outils controles

tu choisis ensuite le textbox dans la liste de controle et tu peux le positionner où tu veux dans la feuille. Ensuite clique avec le bouton de droite sur le textbox et choisi propriétés.

La tu peux ajuster plein de paramêtre sur ton textbox, couleur, font, la propriété multiline y figure. Donc tu peux faire tout ça sans VBA. Je te suggère de changer la propriété name pour quelquechose de plus significatif. Dans mon exemple je l'ai appelé txtTest. Ensuite dans une macro tu peux appeler se controle et en changer les propriétés ou la valeur.

Ma macro se résume comme suit: en cliquant sur le bouton appelé cmdRemplissage, le controle textbox appelé txtTest prend la valeurde la cellule A1 A2 etc... Je ne connais pas la limite d'un TextBox, mais d'après moi elle est plus grande que ce que tu utilisais.

si t'as des questions n'hésite pas

MAth

re,

Te moque pas ! je découvre.

chez moi, je n'ai pas de barre d'outils Contrôle. (je suis en Excel97)

j'ai la barre commande qui ressemble, c'est çà ???

ou alors je réinstalle.

Mais pour revenir à ton exemple, si tu clique sur le bouton plusieurs fois, tu crée d'autant

de zones texte ??

je sens que je vais passé un bon wek-end là dessus !

à te lire

Claude.

Je pense que c'est la bonne barre d'outil, je ne m'en rappelle pas trop. Un petite clarification au sujet du controle Textbox. Tu n'as pas à créer la zone de texte par le biais d'une macro. Tu commences par la positionner correctement et à régler ses paramêtres de la façcon que je t'ai expliqué plus haut. Ensuite quand je clique sur le bouton que j'ai créer, la macro ne fait que changer la valeur du textbox, elle ne le créé pas.

je me moque pas de toi, on commence tous quelque part

Salut le forum

dubois a écrit :

Chez moi, je n'ai pas de barre d'outils Contrôle. (je suis en Excel97)

j'ai la barre commande qui ressemble, c'est çà ???

Claude c'est bien la barre commande sous Excel97, celle avant un équerre comme

premier symbole.

Mytå

Bonsoir Math,Mytå et les autres,

La barre contrôle (ou commande) que je n'ai encore jamais utilisé, m'ouvre de nouvelles perspectives, je suis en train d'éplucher çà !

Mais pour revenir à mon application, je ne crois pas que çà puisse aller.

il me faut bien une macro pour créer la zone texte avec le texte incorporé !!

pour mieux comprendre voici mon fichier, j'ai bidouillé un" truc", mais çà ne m'emballe pas.

https://www.excel-pratique.com/~files/doc/DVD.zip

il y a surement mieux à faire !

amicalement

Claude.

Bonjour Claude,

je regardé un peu ton fichier se matin. La zone de texte qu'il te faut créer, est-ce pour afficher du texte sur ton gabarit de pochette, je suis pas sur de bien comprendre ( et oui c'est a mon tour )

Bonjour Math et au forum,

oui c'est pour mettre en sur-charge sur le gabarit.(et pouvoir déplacer cette zone)

Historique :

je fais des montages vidéo avec "Pinacle studio". (famille ou TV enregistrée)

J'ai donc besoin de "pochettes" pour stocker mes DVD.

- Sur les gabarits que tu as vus, je peux insérer dans les rectangles (ou disque) des photos issues de mes films créés.

- Pour compléter la pochette, j'ai parfois besoin d'ajouter du texte (distribution ou scénario du film) que je vais "pomper" sur le web.

Et c'est là l'objet de ma question !

essaye via le menu "créer texte", tu comprendra mieux, cette solution est limitée à 250 caractères, et je pense que l'on peut améliorer cette solution !

C'est un fichier que je vais mettre à dispo sur le forum, mais avant, pourrai-tu me dire :

1 - comment se comporte le menu

2 - qu'est-ce que çà donne à l'impression, (car je craint que suivant les ordi ou imprimantes, les réglages diffèrent).

3 - ton avis général ?

à te lire

Claude.

Salut Claude,

maintenant je comprend un peu mieux ton programme. J'ai fait des petites modifications pour te montrer qu'on peut utiliser un textbox. J'ai ajouté un textbox sur la pochette de dos dans ta feuille DISK. Dans ta macro ZoneTexte, j'ai rajouté un petit bout de code pour écrire dans ce textbox. J'ai laissé ton ancien code pour que tu puisses comparer. J'ai mis le textbox transparent pour qu'on puisse voir une éventuelle image de fond.

J'ai créé aussi dans la feuille aide un autre textbox où tu peux entrer ton texte et en cliquant sur le bouton, il va se placer dans le textbox de la pochette. Le plus simple selon moi serait d'écrire directement dans le textbox de la pochette, ce que tu peux faire aussi.

Alors regarde ça et dis moi si je suis à coté de la track

Je suis toujours disponible pour tes questions

Désolé j'ai oublié le fichier

https://www.excel-pratique.com/~files/doc/gJAq5DVD.zip

voila

Bonsoir Math et au forum,

Si j'ai bien compris ta démarche, il faut quand même taper le texte à la main !

alors que moi, je veux surtout le copier/coller !!!!, tu comprend.

essaye de faire ma méthode actuelle dans l'onglet" DVD int",en copiant une partie de texte

de l'onglet aide. tu vas voir, sans rien taper.

Il faut encore se creusé !

sinon çà donne quoi l'impression ?

Merci de m'aider, j'ai bon espoir, peut-être en fouillant dans propriétés ?

amicalement

Claude.

tu n'es pas obliger de retaper à la main. Tu peux copier/coller dans le textbox sans problème.

re,

alors là, tu m'intéresse !!!

j'ai essayé, mais pas réussi.

indique-moi exactement la marche à suivre, faut-il être en mode création ?

Claude.

bonsoir,

mais ou est donc passé mon interlocuteur ???

Claude.

désolé Claude j'ai une semaine très chargé,

t'as pas besoin d'être en mode création pour copier/coller dans un textbox. Le textbox fonctionne de la même façon que n'importe quel zone de texte sous windows. Tu cliques dedans avec la souris et ensuite tu y colles ton texte. Essaie avec celui que j'ai mis sur la feuille aide ( avec le bouton ).

bonjour Math et au forum,

Je ne sais pas comment tu fait, mais moi ,pas moyen !

même une zone de texte (formulaire), je n'arrive pas copier-coller.

vérifie chez toi.

amicalement

Claude.

Quand un fait copier/coller à partir de la souris ou du menu, ça ne marche pas, je viens de m'en rendre compte. Par contre, si tu sélectionne la zone de texte et que tu fais ctrl+v, ça fonctionne. Encore un caprice de Excel ???

a plus

Bonjour Math et au forum,

Comme çà c'est bon.

il faudrait une petite amélioration, que je n'arrive pas à mettre en place :

Créer une macro indépendante qui ferait çà :

Copier le texbox"modèle" à l'emplacement de la cellule active.

Ce qui permettrait de créer plusieurs textes.

Sub Macro1()
    Sheets("aide").Select
    ActiveSheet.Shapes("txtBackCoverSaisie").Copy
    Sheets("DVD").Select
    Range("am2").Select
    ActiveSheet.Paste
End Sub

Ce code fonctionne, mais n'est valable que pour la cellule "am2" dans l'onglet"DVD",

comment faire pour que çà marche dans cellule active ?

Tu vois ce que je veux dire ?

Il n'y aurait plus besoin du Texbox dans "DISK"

Au final, je conserverai les 2 solutions, la mienne pour les petits textes + la tienne pour les textes plus importants.

merci pour ton aide.

amicalement

Claude.

Rechercher des sujets similaires à "vba inserer plage zone texte"