Sythaxe séléction plage avec No de colonne en variable

  • Initiateur de la discussion Initiateur de la discussion Vorens
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Vorens

XLDnaute Occasionnel
Bonjour à tous,


Je cherche la bonne synthxe pour effectuer une séléction de plage de cellule avec le nom de la colonne en variable

Voici la ligne que je n'arrive pas à ecrire correctement.

Code:
Set ColTrouve = Workbooks(SourceFile).Sheets(SourceTab).Row(1).Cells.Find(what:=SourceCol)

Workbooks(SourceFile).Sheets(SourceTab).Range("ColTrouve 2":ColTrouve Range(Selection, Selection.End(xlUp)).Copy

Le problème est dans la ligne commencais par "WorkBooks"

Varaible ColTrouve = C (exemple)

L'objectif de cette ligne est de sélectionner toute les valeurs de la colonne C par exemple. Depuis C2 à C fin de tableau, D'ou le Selection.End(xlUp).

Es ce que quelqu'un sais comment écrire cette ligne correctement ?

Par avance un très grand merci pour le temps passé à me répondre

Cordialement


Vorens
 
Re : Sythaxe séléction plage avec No de colonne en variable

Re


J'ai un petit sousis avec le code suivant


Code:
Set ColTrouve = Workbooks(SourceFile).Sheets(SourceTab).Rows(1).Cells.Find(what:=SourceCol)

ColTrouve2 = Split(ColTrouve.Address, "$")(1)

Workbooks(SourceFile).Sheets(SourceTab).Range(ColTrouve2 & "2:" & ColTrouve2 & Range(ColTrouve2 & "65536").End(xlUp).Row).Copy


Normalement, il devrais sélectionner la colonne entiere ou se trouve des valeur, prenons l'exemple ou la colonne en question est B

Dans la colonne B j'ai 10 ligne, je désire sélectionne Range (B2:B10) sauf que la fonction me sélectionne range(B1:B2) a la place. La question est: pourquoi la partie End(xlUp).Row) ne fonctionne pas correctement ?

Quelque sait pourquoi ?
 
Re : Sythaxe séléction plage avec No de colonne en variable

Re,


Le problème vient de

Range(ColTrouve2 & "65536").End(xlUp).Row)

La valeur est = 1 alors qu'il devrais être = 10. Je ne comprend pas pourquoi il ne prend pas la derniere cellule pleine du tableau mais la cellule 1 à la place :s
 
Re : Sythaxe séléction plage avec No de colonne en variable

Bonsoir,
Ne penses tu pas qu'il grand temps de fournir un peu plus que ces qq lignes de codes qui n'ont aucun sens pour qui ne dispose pas du fichier !!

Edit :
tu écris...
Code:
Set ColTrouve = Workbooks(SourceFile).Sheets(SourceTab).Rows(1).Cells.Find(what:=SourceCol)
...donc on peut supposer 🙂mad🙂 que tu cherches un variable SourceCol (?) dans la ligne 1, donc en toute logique ColTrouve correspond à la cellule qui contient cette valeur et si c'est le cas...
Code:
Dim c As Range
With Workbooks(SourceFile).Sheets(SourceTab)
    Set c = .Rows(1).Find(what:=SourceCol)
    If Not c Is Nothing Then
        .Range(.Cells(2, c.Column), .Cells(65000, c.Column).End(xlUp)).Copy
        '...
    End If
End With
End Sub
kjin
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

M
Réponses
0
Affichages
949
Maad84
M
Retour