Cherche à coller suite à sélection colonne

Bonjour,

J'espère pouvoir exprimer correctement ma recherche.

J'ai dans la colonne A des données sur x lignes, que je transpose de la colonne B à B:A et via une formule.

Étant donné que j'utilise une formule pour transposé ces données, ma première ligne de ces colonnes n'est pas du texte. Donc une recherche de texte par colonne ne fonctionne pas.

Je veux rapporter d'autres valeurs dans ces colonnes transposées, soit de B à B:A.

J'ai fait une recherche de la position de la ligne de ma valeur recherchée de la colonne A pour sélectionner ma colonne.

Ensuite je n'arrive pas à coller le contenu de ma textbox.

Private Sub btClick()
Dim Ldst As String
Dim Lg As Integer
If Me._NoTbx = "" Then MsgBox "?": Exit Sub
Ldst= NoLbx .Value
MsgBox ("Valeur : " & Ldst)' vérifie que la valeur colonne A est bien récupérée
Set Plage = Sheets("Feuil2").Columns(1).Find(Ldst, lookat:=xlWhole)
Lg= Plage.Row + 1
With Sheets("Feuil2")
Col = Columns(Lg).Select ' La colonne est bien sélectionnée
'ensuite je bloque  ! Je veux coller _NoTbx dans le première cellule disponible et cela à partir de la ligne 2 étant donné que la ligne 1 n'est pas du texte, donc si j'utilise un .find ou .End(xlUp) cela renvoi à la cellule 6048576

End Sub

J’espère que ce code et mes explications soit explicitent.

Merci.

Bonjour,

Je ne suis pas sûr d'avoir tout compris. La méthode Find permet de rechercher sur les valeurs ou les formules mais je pense qu'il vaut mieux s'en passer quand on sait où on recherche. On peut connaitre la position grâce à la fonction Match (EQUIV).

Pour le reste, j'ai reproduit ce que vous sembliez avoir commencé :

Private Sub btClick()

Dim Ldst As String
Dim Lg%, Col%, nvl%

If Me._NoTbx = "" Then MsgBox "?": Exit Sub
Ldst= NoLbx .Value
MsgBox ("Valeur : " & Ldst)' vérifie que la valeur colonne A est bien récupérée

With Sheets("Feuil2")
    'Lg = .Columns(1).Find(Ldst, lookin:=xlformulas, lookat:=xlWhole).row + 1 '<< peut marcher ? 'xlvalues
    Lg = application.match(Ldst, .Columns(1), 0) + 1 'equivalent EQUIV sur excel
    'Col = .Columns(Lg).column
    'Col = Lg
    nvl = .cells(.rows.count, Lg).end(xlup).row + 1
    .cells(nvl, Lg) = Me._Notbx
end with

End Sub

Cdlt,

Bonjour,

Merci pour ce retour.

Vous avez très bien compris ma demande.

Col = .Columns(Lg)

Me renvoi l'erreur 13 (incompatibilité de type), si je supprime le point avant Columns et que je met à la fin .select, cela sélectionne bien ma ligne mais une erreur se produit sur la ligne suivante soit :

nvl = .cells(.rows.count, Col).end(xlup).row + 1

Erreur 1004 (erreur définie par l'application ou l'objet).

Col% est bien égale Col As integer ?

Merci pour ces échanges.

Bonjour,

J'ai édité le code à l'instant. Col est un entier et .columns(lg) un objet range donc forcément ça coince .

Les lignes avec Col sont inutiles, c'est une variable dont on peut et donc dont on doit se passer car on a juste à reprendre Lg vu qu'il y a transposition tout simplement.

Oui Col% veut dire Col as integer et Col& veut dire Col as long.

Merci beaucoup pour cette aide, ça fonctionne nickel.

Merci également pour ces explications.

Je vous en prie,

Bonne continuation,

Rechercher des sujets similaires à "cherche coller suite selection colonne"