Problème définition variable pour fonction range

Bonjour à tous,

Dans ma macro je fais un certain nombre d'opérations, puis je dois

1- Aller dans une feuille qui elle contient plusieurs tableaux,

2- Choisir le bon tableau de par son nom.

3- Dans celui-ci chercher une certaine cellule.

4- se trouvant dans cette cellule là faire un Ctrl + Flèche du bas,

5- et dans la cellule dans laquelle on atterira, coller une valeur copiée précedemment.

Du mal à trouver ce qui cloche.

Merci d'avance,

Voir la macro du module 3 "ScénarioSansDéfaut"

Salut le fil.

Dans un premier temps évite les XXXXX.Select qui vont ralentir les calculs pour rien.

Si tu utilises des tableaux fait le à 100% je te conseille de rajouter des lignes d'entêtes a tes tableaux que tu nommera Broche 1 Broche 2 etc.....

Ensuite tu joue avec ses propriétés:

Par exemple:

Debug.Print Range("YDR014[Broche 1]").Row

te renverra la première ligne de ton tableau sans les entêtes donc dans ton cas = 3

tu veux la dernière ligne de la colonne Broche 2 :

Range("YDR014[Broche 2]").Rows.End(xlUp).Row

Attention tu dois y rajouter la ligne d'entête et la ligne du nom du tableau cette valeur c'est le fameux . Row donc dernière ligne =

With Range("YDR014[Broche 1]")
    lg =.Rows.End(xlUp).Row +.Row
End With 

Mais il y a mieux encore si ton tableau est bien préparé dès le début tu peux tout simplement faire un

Range("YDR014[Broche 1]").ListObject.ListRows.Add

Ensuite tu notes ce que tu veux dans la cellule

Range("YDR014[Broche 1]").Rows(Range("YDR014[Broche 1]").Rows.count + 1) = "Toto"

Bien entendu des With et End With simplifieront le code

Donc on récapitule d'après ce que tu veux

1- Aller dans une feuille qui elle contient plusieurs tableaux,

Là on ne fait rien

2- Choisir le bon tableau de par son nom.

Là on ne fait rien

3- Dans celui-ci chercher une certaine cellule.

Là on ne fait rien

4- se trouvant dans cette cellule là faire un Ctrl + Flèche du bas,

Là on ne fait rien

5- et dans la cellule dans laquelle on atterira, coller une valeur copiée précedemment.

 With Range("YDR014[" & "Broche 1" & "]")
        .ListObject.ListRows.Add
        .Rows(.Rows.Count + 1).Value = "Ta valeur"
    End With

Tu remarqueras que "Broche 1" est à part ce peut être le résultat d'un calcul d'une recherche etc...

Bonne prog...

Bonjour,

Pas tout compris ?

Ce qui certain, c'est qu'il faut apprendre à structurer tes données.

Cdlt.

Merci beaucoup à tous, on va essayer de mettre tous ces conseils en application.

Belle journée à vous

Oups erreur de message pardon

Rechercher des sujets similaires à "probleme definition variable fonction range"