OVH Cloud OVH Cloud

Définir un nom

12 réponses
Avatar
Bruno RCSC
Bonjour,

Win XP, Excel 2002

Je souhaite définir une base de données de hauteur variable commençant en A5
J'utilise le code suivant :
ActiveWorkbook.Names.Add Name:="database",
RefersToR1C1:=Range("A5").CurrentRegion
Or, la base de données obtenues fait référence à A1 et non en A5.
Que dois je changer ?
Comment définir un nom qui va d'une cellule donnée (ex : C4) à la dernière
cellule (variable) d'une feuille ?

Merci pour votre aide.

BH.

2 réponses

1 2
Avatar
Bruno RCSC
Je suis désolé, effectivement il y a des données au dessus de la ligne 5
mais pas en A
Mais Ok, cela répond à ma problématique du moment.

Merci.

BH


Dans ta question originale, il y avait ceci :

| RefersToR1C1:=Range("A5").CurrentRegion
| Or, la base de données obtenues fait référence à A1 et non en A5.

Cela suppose qu'il y a des données entre A1 et A5 .... NON ?
Si c'est le cas la procédure proposée fonctionne correctement et
répond à ta question.

En supposant par exemple que la cellule A1 possède une donnée mais
que la cellule soient isolée du reste de la feuille, une erreur 1004 est
générée
MAIS LES DISPOSITIONS DES DONNÉES ne correpondent pas à
ta demande initiale.





"Bruno RCSC" a écrit dans le message de news:
45db41f6$0$27368$
Oui, j'ai mis le nom adéquate, d'ailleurs l'arrêt et la mise en jaune du
code commence au point devant Range.

BH

| Pour le code de MichDenis, cela bogue et met l'erreur d'exécution
"1004".

J'espère que tu as pris le temps d'inscrire le nom de TA FEUILLE dans la
procédure
en remplacement du nom : "NomDeLaFeuille"

With Worksheets("NomDeLaFeuille")
.Range("A1").CurrentRegion.Offset(4). _
Resize(.Range("A1").CurrentRegion.Rows.Count - 4).Name = "toto"
End With









Avatar
Bruno RCSC
Oui, merci, cela me convient, j'avais pigé le X.

Mais ma question était plus vaste, que dois je écrire comme code si une base
va de la colonne C à X puis si le tableau venait à évoluer avec Z colonne ?

BH.

--
Salut Bruno,

Pour le code de Serge, Ok mais comment dois je faire pour aller à la
dernière cellule remplie mais pas en colonne C (en colonne X) ?


Est-ce que cette macro te convient ?
Sub Nom()
ActiveWorkbook.Names.Add Name:="database", _
RefersTo:=Range(Range("C4"), Range("X65536").End(xlUp))
End Sub

Serge





1 2