OVH Cloud OVH Cloud

coordonnées d'une plage nommée

15 réponses
Avatar
Greffier
Bonjour,

Dans un userform j'essaie de trouver le numéro de colonne d'une plage
nommée, de façon à l'utiliser dans une valeur Cells.
Malheureusement, je ne récupère rien.

Dim ColIndex As Integer

Worksheets("feuille1").Activate
Range("feuille1!liste").Select
ColIndex = Range("feuille1!liste").Column

Pourquoi, ou est l'erreur.

Merci.

Greffier.

5 réponses

1 2
Avatar
MichDenis
Dans ta colonne E que tu nomme Pouvoirs comme tu as seulement
l'en-tête de colonne comme donnée dans cette dernère en E1 et
qu'aucune donnée n'apparaît dans ta liste, la formule renvoie #REF!
et par conséquent, aucune ligne de code ne peut être exécuter :
x = range(#REF!).column -> évidemment cela génère une erreur.

ÞCALER(copropriétaires!$E$2;;;NBVAL(copropriétaires!$E:$E)-1)
Tu as un bon exemple du truc chiant avec cette façon de définir une plage nommée
et c'est aussi vrai si certaines lignes de la plage sont vides !

Tu peux utiliser cette façon de définir une plage nommée...
Dim X as Long
With Worksheets("copropriétaires")
x = .range("A65536").end(xlup).row
if x = 1 then x = 2
.range("A2:A" & x).name = "Pouvoirs"
end with





"Greffier" a écrit dans le message de news:
Bonjour Daniel,

Le Range("feuille1!liste").Select ne marche pas.

Comme demandé, je joins mon classeur qui est un userform que je suis en
train de transformer, pour déterminer le numéro de colonne de ma plage
nommée, puis plus tard la première et dernière ligne d'une plage nommée.
Ceci n'est que le premier pas vers différentes fonctions que je vais
employer.

http://cjoint.com/?ddrEmOzaIb

Cordialement,

Greffier.


"Daniel" a écrit dans le message de news:

Bonjour.
Dans le code que tu as posté, est-ce que la ligne :
Range("feuille1!liste").Select
s'effectue bien ? La plage liste est-elle bien sélectionnée ?
Cordialement.
Daniel
"Greffier" a écrit dans le message de news:

Bonjour,

Dans un userform j'essaie de trouver le numéro de colonne d'une plage
nommée, de façon à l'utiliser dans une valeur Cells.
Malheureusement, je ne récupère rien.

Dim ColIndex As Integer

Worksheets("feuille1").Activate
Range("feuille1!liste").Select
ColIndex = Range("feuille1!liste").Column

Pourquoi, ou est l'erreur.

Merci.

Greffier.







Avatar
Daniel
Il faut au moins 2 lignes remplies dans la plage "pouvoirs, puisque tu la
définis d'une longueur de NBVAL(E:E)-1.
Daniel
"Greffier" a écrit dans le message de news:

Bonjour Daniel,

Le Range("feuille1!liste").Select ne marche pas.

Comme demandé, je joins mon classeur qui est un userform que je suis en
train de transformer, pour déterminer le numéro de colonne de ma plage
nommée, puis plus tard la première et dernière ligne d'une plage nommée.
Ceci n'est que le premier pas vers différentes fonctions que je vais
employer.

http://cjoint.com/?ddrEmOzaIb

Cordialement,

Greffier.


"Daniel" a écrit dans le message de news:

Bonjour.
Dans le code que tu as posté, est-ce que la ligne :
Range("feuille1!liste").Select
s'effectue bien ? La plage liste est-elle bien sélectionnée ?
Cordialement.
Daniel
"Greffier" a écrit dans le message de news:

Bonjour,

Dans un userform j'essaie de trouver le numéro de colonne d'une plage
nommée, de façon à l'utiliser dans une valeur Cells.
Malheureusement, je ne récupère rien.

Dim ColIndex As Integer

Worksheets("feuille1").Activate
Range("feuille1!liste").Select
ColIndex = Range("feuille1!liste").Column

Pourquoi, ou est l'erreur.

Merci.

Greffier.











Avatar
JB
http://cjoint.com/?ddsLwB7sKH

jb

On 3 mar, 16:31, "Greffier" wrote:
Bonjour JB,

la liste des noms de champs avec insertion/nom/coller/coller la liste : OK
elle est complète et correcte

ou

For Each n In ActiveWorkbook.Names
MsgBox n.Name
Next n

est correct lui aussi.

Pourtant je me suis référé au news Excel.
Toutes mes plages sont définies par la fonction décaler.

Greffier.

"JB" a écrit dans le message de news:

Tout se passe comme s'il ne connaissait pas le nom de champ:

Affiche la liste des noms de champs avec insertion/nom/coller/coller
la liste

ou

For Each n In ActiveWorkbook.Names
MsgBox n.Name
Next n

Nom local à une feuille?

JB

On 3 mar, 15:59, "Greffier" wrote:



Bonjour JB,

J'ai toujours une erreur '1004' : la méthode Range de l'objet _global a
échouée.

cordialement,

Greffier

"JB" a écrit dans le message de news:

Bonjour,

ColIndex = Range("liste").Column

JB

On 3 mar, 13:05, "Greffier" wrote:

Bonjour,

Dans un userform j'essaie de trouver le numéro de colonne d'une pla ge
nommée, de façon à l'utiliser dans une valeur Cells.
Malheureusement, je ne récupère rien.

Dim ColIndex As Integer

Worksheets("feuille1").Activate
Range("feuille1!liste").Select
ColIndex = Range("feuille1!liste").Column

Pourquoi, ou est l'erreur.

Merci.

Greffier.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -




Avatar
Greffier
Bonjour,

Merci à tous pour vos solutions et vos réponses.
J'avais remarqué mais sans y prêter attention que dès que la colonne "E"
était vide, il y avait une erreur. Je vais donc y remédier en remplissant
quelques lignes, puis après calcul du n° de la colonne, la remettre à
espaces.

Encore une fois merci de la part d'un grand-père étourdi.

Greffier.





"Daniel" a écrit dans le message de news:

Il faut au moins 2 lignes remplies dans la plage "pouvoirs, puisque tu la
définis d'une longueur de NBVAL(E:E)-1.
Daniel
"Greffier" a écrit dans le message de news:

Bonjour Daniel,

Le Range("feuille1!liste").Select ne marche pas.

Comme demandé, je joins mon classeur qui est un userform que je suis en
train de transformer, pour déterminer le numéro de colonne de ma plage
nommée, puis plus tard la première et dernière ligne d'une plage nommée.
Ceci n'est que le premier pas vers différentes fonctions que je vais
employer.

http://cjoint.com/?ddrEmOzaIb

Cordialement,

Greffier.


"Daniel" a écrit dans le message de news:

Bonjour.
Dans le code que tu as posté, est-ce que la ligne :
Range("feuille1!liste").Select
s'effectue bien ? La plage liste est-elle bien sélectionnée ?
Cordialement.
Daniel
"Greffier" a écrit dans le message de news:

Bonjour,

Dans un userform j'essaie de trouver le numéro de colonne d'une plage
nommée, de façon à l'utiliser dans une valeur Cells.
Malheureusement, je ne récupère rien.

Dim ColIndex As Integer

Worksheets("feuille1").Activate
Range("feuille1!liste").Select
ColIndex = Range("feuille1!liste").Column

Pourquoi, ou est l'erreur.

Merci.

Greffier.















Avatar
Greffier
Bonjour,

J'ai trouvé une solution en nommant la cellule titre de la colonne.

Greffier.




"Greffier" a écrit dans le message de news:

Bonjour,

Merci à tous pour vos solutions et vos réponses.
J'avais remarqué mais sans y prêter attention que dès que la colonne "E"
était vide, il y avait une erreur. Je vais donc y remédier en remplissant
quelques lignes, puis après calcul du n° de la colonne, la remettre à
espaces.

Encore une fois merci de la part d'un grand-père étourdi.

Greffier.





"Daniel" a écrit dans le message de news:

Il faut au moins 2 lignes remplies dans la plage "pouvoirs, puisque tu la
définis d'une longueur de NBVAL(E:E)-1.
Daniel
"Greffier" a écrit dans le message de news:

Bonjour Daniel,

Le Range("feuille1!liste").Select ne marche pas.

Comme demandé, je joins mon classeur qui est un userform que je suis en
train de transformer, pour déterminer le numéro de colonne de ma plage
nommée, puis plus tard la première et dernière ligne d'une plage nommée.
Ceci n'est que le premier pas vers différentes fonctions que je vais
employer.

http://cjoint.com/?ddrEmOzaIb

Cordialement,

Greffier.


"Daniel" a écrit dans le message de news:

Bonjour.
Dans le code que tu as posté, est-ce que la ligne :
Range("feuille1!liste").Select
s'effectue bien ? La plage liste est-elle bien sélectionnée ?
Cordialement.
Daniel
"Greffier" a écrit dans le message de news:

Bonjour,

Dans un userform j'essaie de trouver le numéro de colonne d'une plage
nommée, de façon à l'utiliser dans une valeur Cells.
Malheureusement, je ne récupère rien.

Dim ColIndex As Integer

Worksheets("feuille1").Activate
Range("feuille1!liste").Select
ColIndex = Range("feuille1!liste").Column

Pourquoi, ou est l'erreur.

Merci.

Greffier.



















1 2