Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

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
 

Grand Chaman Excel

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

Bonjour,

Si j'ai bien compris, quelque chose comme ça :

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

A+
 

Vorens

XLDnaute Occasionnel
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 ?
 

Vorens

XLDnaute Occasionnel
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
 

kjin

XLDnaute Barbatruc
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:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…