Debut d'une macro en fonction d'une cellule variable

Bonjour,

Je suis pas très à l'aise avec VBA, du coup j'aurais besoin de votre aide malgré mes recherches.

Dans un fichier j'ai le code suivant :

Sub test()

Range("B28").Select

ActiveCell.FormulaR1C1 = _

"=IF(RC[-1]="""","""",VLOOKUP(RC[-1],[Wiring_diagram_codebook.xlsm]Nomenclature!C1:C7,3,FALSE))"

derniere_ligne = Range("a28").End(xlDown).Row

' ou derniere_ligne = ActiveSheet.UsedRange.Rows.Count

Range("B28:E28").AutoFill Destination:=Range("B28:E" & derniere_ligne), Type:=xlFillDefault

End Sub

Cela me permet de copier dans de la cellule B28, les valeurs d'une recherche verticale dans un autre fichier en fonction du contenu de la cellule A28. Cela continue jusqu'à arriver sur une cellule vide de la colonne A.

Mon problème est que ce fichier est spécifique pour un type de produit et que pour un autre produit la macro pourrait commencer qu'à partir de la cellule B50 ou B10, enfin ca serait une valeur variable.

Comment puis je intégrer cela dans le code VBA ?

Si cela peut aider à ce que ce soit plus simple, je peux par exemple mettre dans une cellule (à coté du bouton macro) l'information disant que la macro doit commencer à partir de telle valeur de cellue. Du genre en cellule J2 j'indique B50 pour dire à la macro que c'est en B50 qu'elle doit commencer.

J'espère que c'est assez clair pour vous et merci d'avance pour votre aide.

Bonjour

Déjà si tu travaillais en tableaux structurés tu éviterais

derniere_ligne = Range("a28").End(xlDown).Row
et 
...AutoFill Destination

puisque qu'un formule est automatiquement répliquée de la 1ère à la dernière ligne du tableau

Mais tes explications ne sont pas très claires concernant un autre produit : on ne comprends pas si c'est le fichier où on recherche qui change ou bien ce qui est écrit en A...

Chris,

En fait je cherche à faire un fichier "master".

Ensuite il existerait 4, 5, voire 10 fichiers du même principe. Sauf que sur le 1er fichier ma macro devrait commencer à partir de la cellule B28, sur le 2eme fichier la macro devrait commencer à partir de la cellule B50 et sur le 8ème fichier à partir de la cellule B10 par exemple.

Du coup j'aimerai mettre la valeur de la cellule où la macro doit commencer dans une cellule J2 (par exemple) et que dans le code VBA, là où j'ai mis B28 et A28, ca lise la valeur qui est en J2.

Est ce plus clair ainsi ?

Cordialement,

RE

Si c'est un tableau structuré on se fiche de la ligne : il suffit de se référer à Databodyrange.cells(1,colonne) du tableau structuré pour trouver la 1ère ligne du tableau où qu'il commence

Colonne doit être trouvable selon une logique (titre ou autre)

Exemple si titre

[NomTableau].ListObject.LIstColumns("Titre colonne").Databodyrange.cells(1,1)
Rechercher des sujets similaires à "debut macro fonction variable"