Trouver une valeur et copier/coller une colonne en fonction de cette valeur

Bonjour à tous,

Je vous écris car j'ai en ce moment un problème concernant un code VBA.

J'ai deux fichiers, le premier fichier ("classeur1") est un fichier qui sert à collecter des données. Le second fichier est le fichier ("classeur2") où se trouve les données que je souhaite collecter.

Dans mon classeur 2 dans la feuille "Données", je souhaite récupérer certaines données en fonction du titre de ma colonne. Par exemple si le titre de ma colonne en D1 est "12W" je souhaite prendre toutes les données en dessous (donc à partir de D2 jusqu'à la fin) et copier la colonne, puis la coller dans mon classeur 1 dans la feuille "collecte" en colonne B par exemple.

Mon problème est également que le titre de la colonne doit être considéré comme une variable que je choisis. Je ne souhaite pas toujours récupérer la colonne qui s'appelle 12W mais par exemple 3W. Il faut donc que le titre soit un critère que je rentre manuellement.

Je n'arrive pas à formuler un code en fonction de ces paramètres, pouvez-vous m'aider s'il vous plait?

Bonjour

Comme je ne suis pas très motivé à créer un classeur juste pour ça voici un code non testé et à adapter mais qui peut être une piste.

Sub test01()
  Dim rng As Range
  Dim nomCol As String
  Dim derLigne As Integer

  nomCol = InputBox("Entrez le nom de la colonne :")
  Set rng = Workbooks("Classeur2").Sheets("Données").Range("ligne nom colonnes").Find(nomCol, LookIn:=xlValues)
  If Not rng Is Nothing Then
    derLigne = Cells(Rows.Count, rng.Column).End(xlUp).Row
    Workbooks("classeur1").Sheets("collecte").Range("B" & derLigne).Value = _
      Workbooks("Classeur2").Sheets("Données").Range(Cells(1, rng.Column), Cells(derLigne, rng.Column)).Value
  Else
    MsgBox "Colonne non trouvée"
  End If

End Sub

Si tu joins les fichiers on pourras peut être faire mieux.

Cordialement

Rechercher des sujets similaires à "trouver valeur copier coller colonne fonction cette"