Copier coller dans une zone de texte

Bonjour,

Je souhaite copier le texte se trouvant dans une plage de cellule qui est sélectionnée (jusque là je pense que ça fonctionne et le coller dans une zone de texte afin de le récupérer. Est ce déjà une bonne solution ?

Si oui, j'ai commencé à écrire le code suivant : Je pense qu'il fonctionne jusqu'à Selection.copy . AI-je bien fait de mettre avant " Application.CutCopyMode = False"

Je pense que le if datafound fonctionne aussi. Je pense que la sélection de ma feuille en enlevant le mot de passe fonctionne. mais après par contre.....

je souhaiterais créer une zone de texte donc et coller la sélection à l'intérieur. Dans l'idéal il y aurait un retour à la ligne entre chaque texte de cellule collé.

Qqun sait faire ?

Private Sub CommandButton1_Click()

Application.ScreenUpdating = False
    nom = ComboBox4.Value
    Feuil1.Select
    Range("7:7").Find(nom, , xlValues, xlWhole, , , False).Select
    ActiveCell.Select
    Colonne = ActiveCell.Column
    ligne = ActiveCell.Row

    Set Selection = Sheets("saisie").Range(Cells(ligne + 3, Colonne + 2), Cells(ligne + 1949, Colonne + 2))
    Application.CutCopyMode = False
    Selection.Copy

    If datafound = False Then Sheets(ComboBox4.Value).Select: MsgBox "Deux possibilités : Soit il n'y a pas de données pour cette sélection soit vous avez oublié d'enlever les filtres précédents": Exit Sub

Sheets(ComboBox4.Value).Select
    ActiveSheet.unprotect Password:="toto"

   Range("A1").Select 'sélectionne la cellule/bloc ou il faut coller
   Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
                False, Transpose = False 'copier uniquement les valeurs
End Sub

Je ne pense pas être trop loin de la solution mais je n'arrive pas à faire le coller.

J'ai fait la sélection sur une feuille.

je la copie.

je change de feuille.

j'enlève la protection.

je créé une zone de texte mais il me manque le "coller"..... si qqun peut se pencher sur le problème... Merci

Private Sub CommandButton1_Click()

Application.ScreenUpdating = False

    nom = ComboBox4.Value

    Feuil1.Select
    Range("7:7").Find(nom, , xlValues, xlWhole, , , False).Select
    ActiveCell.Select
    Colonne = ActiveCell.Column
    ligne = ActiveCell.Row

    Set commentaire = Sheets("saisie").Range(Cells(ligne + 3, Colonne + 2), Cells(ligne + 1949, Colonne + 2))
      commentaire.Copy
     Sheets(ComboBox4.Value).Select
      ActiveSheet.unprotect Password:="toto"

      ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 360, 65.25, 235.5, _
        78.75).Select

    Unload Me

End Sub

Je n'arrive pas à trouver......

Comment récupérer sur une plage de cellule sélectionner, le texte de chacune de ces cellules et le coller dans une zone de texte, ou une textbox d'un userform par exemple.....

Merci

Bonjour, je suis encore sur mon pb et j'ai finalement décidé de copier coller dans un userform. Cette macro ne plante pas mais le coller ne se fait toujours pas. Qqun peut me sauver parce que là vu le nombre d'heures passé.... ça devient déprimant.... la plage copier ne contient que du texte.

Private Sub CommandButton1_Click()
Application.ScreenUpdating = False

    nom = ComboBox4.Value

    Feuil1.Select
    Range("7:7").Find(nom, , xlValues, xlWhole, , , False).Select
    ActiveCell.Select
    colonne = ActiveCell.Column
    ligne = ActiveCell.Row

    Set commentaire = Sheets("saisie").Range(Cells(ligne + 3, colonne + 2), Cells(ligne + 1949, colonne + 2))
    Application.CutCopyMode = False
    commentaire.Copy

    Unload Me
    Sheets(ComboBox4.Value).Select
    UserForm14.Show
    UserForm14.TextBox1.Paste

End Sub

Bonjour

Pour t'aider il faut commencer par nous aider

Joins un fichier dans lequel tu notes ce que tu as et ce que tu veux

Merci banzai. Oui oui je peux faire ça pardon.

21commentaire.xlsx (10.71 Ko)

Bonjour

A tester

j'ai essayé d'adapter ton code banzai. Merci pour ton aide.

il crée bien la zone de texte mais écrit "vrai" à l'intérieur. J'espere m'approcher de la solution.....

Private Sub CommandButton1_Click()
Dim sh As Shape
Dim commentaire As String
Application.ScreenUpdating = False

    nom = ComboBox4.Value

    Feuil1.Select
    Range("7:7").Find(nom, , xlValues, xlWhole, , , False).Select
    ActiveCell.Select
    colonne = ActiveCell.Column
    ligne = ActiveCell.Row

    commentaire = Sheets("saisie").Range(Cells(ligne + 3, colonne + 2), Cells(ligne + 1949, colonne + 2)).Copy

    Sheets(ComboBox4.Value).Select
   Set sh = ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 650, 250, 230, 120)
    With sh
      .Fill.ForeColor.RGB = RGB(170, 170, 170)
      .Name = "Banzai64"
      .TextFrame2.TextRange.Characters.Text = commentaire
          End With

    Unload Me
End Sub

Bonsoir

C'est ta variable Commentaire qui est mal initialisée

Prends exemple sur ce que j'ai fait

Ok je vais regarder cela. Mais j'ai bcp de choses à changer? ou je suis très proche de la solution?

Bonsoir

Il te faut remplacer 1 ligne par 3 lignes

et rajouter une ligne

J'ai essayé hein mais ça ne marche pas ... enfin mes changements ne marchent pas :/

Private Sub CommandButton1_Click()
Dim sh As Shape
Dim J As Long
Dim commentaire As String

Application.ScreenUpdating = False

    nom = ComboBox4.Value

    Feuil1.Select
    Range("7:7").Find(nom, , xlValues, xlWhole, , , False).Select
    ActiveCell.Select
    colonne = ActiveCell.Column
    ligne = ActiveCell.Row

 For J = 10 To Range("colonne" & Rows.Count).End(xlUp).Row
 msg = msg & Range("colonne" & J) & vbCr
 Next J
     Sheets(ComboBox4.Value).Select
   Set sh = ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 650, 250, 230, 120)
    With sh
      .Fill.ForeColor.RGB = RGB(170, 170, 170)
      .Name = "Banzai64"
      .TextFrame2.TextRange.Characters.Text = commentaire
          End With

    Unload Me
End Sub

Bonsoir

T'es tellement proche de la solution que tu ne brules pas mais tu te carbonises

D'un côté dans la boucle tu utilises la variable Msg mais tu utilises la variable Commentaire pour copier dans la forme

Si tu bloques toujours reviens par ici

Oui en effet pardon j'ai fat la modification. J'ai effacé commentaire et mis Msg. mais ça bug à ce niveau :

For J = 10 To Range("colonne" & Rows.Count).End(xlUp).Row

Bonsoir

Désolé je n'avais pas vu cette erreur

Remplace cette partie de macro

  For J = 10 To Cells(Rows.Count, colonne).End(xlUp).Row
    msg = msg & Cells(J, colonne) & vbCr
  Next J

ça fonctionne avec le code suivant exactement. Super génial Je te remercie Vraiment bcp

Maintenant je vais qu'il enlève les cellules vides. Encore merci

    Private Sub CommandButton1_Click()
    Dim sh As Shape
    Dim J As Long
    Dim commentaire As String

    Application.ScreenUpdating = False

        nom = ComboBox4.Value

        Feuil1.Select
        Range("7:7").Find(nom, , xlValues, xlWhole, , , False).Select
        ActiveCell.Select
        colonne = ActiveCell.Column
        ligne = ActiveCell.Row

     For J = 10 To Cells(Rows.Count, colonne + 2).End(xlUp).Row
    msg = msg & Cells(J, colonne + 2) & vbCr
  Next J
         Sheets(ComboBox4.Value).Select
       Set sh = ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 650, 250, 230, 120)
        With sh
          .Fill.ForeColor.RGB = RGB(170, 170, 170)
          .Name = "Banzai64"
          .TextFrame2.TextRange.Characters.Text = msg
              End With

        Unload Me
    End Sub
Rechercher des sujets similaires à "copier coller zone texte"