Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Déclaration de zone variable

1 réponse
Avatar
JPMonnier
Bonjour,
Je sèche sur une utilisation de zones nommées
Soit :
Public FE, Zone_nommée As Object

Set FE = sheets("Feuil1")

'Zone_nommée varie suivant un on X, Gosub 1, 2, 3 etc

Sheets("Feuil2").cells(1,2) =FE.[zone_mommée]

1: Zone_nommée = FE.[Nom1] : Return
2: Zone_nommée = FE.[Nom2] : Return
3: Zone_nommée = FE.[Nom3] : Return

Comment déclarer [Zonée_ nommée] = un nom de mon classeur NOM1, NOM2, NOM3
etc ....
j'ai essayé avec
Set Zone_nommée = Sheets("Feuil1").[NOM1]
message d'erreur

Merci d'avance
--
Cordialement
jpmonnier-no-spam@neuf.fr

1 réponse

Avatar
JPMonnier
Bonjour michdenis,
Toujour aussi compétent en la matière !
Je vais testé avec toutes ces bonnes infos
En cequi concerne les crochets "[" je les utilise beaucoup sans avoir de
soucis particuliers ! c'est plutot dans les déclaratinons de variable que je
flotte un peu
Je vais aussi tester select case

Concernant ce que je tente de faire, c'est "une usine à Gaz" que j'ai
élaboré pour la gestion d'une coupe de France concernant 8 poules de 3
équipes de tennis et badmniton (représentant une centaine de matchs à gérer
avec tous les cas d'égalité possibles) etc ...
Tout à fonctionné nickel, et pour mon plaisir, je transforme cette appli en
quelque chose de plus professionnel 95% VBA 10% fonction excel, qui je pense
est plus facile à contrôler et à verrouiller
Cete grosse appli m'empêche de poster des codes un peu long et difficile à
ingérer !
Je ne vais pas t'embêter plus longtemps avec mes pb
Grâce à ce forum, ou ta participation est très active et appréciée ainsi que
d'autres(un peu toujours les mêmes ! les balaises), j'avance à grands pas
Merci encore pour tout
Très amicalement
Jean Pierre
--



"michdenis" a écrit dans le message de
news:e52ZZ%
Déclaration des variables :

Public FE, Zone_nommée As Object
*** si FE est une feuille de calcul pourquoi ne pas
déclarer Public FE as Worksheet

Zone_nommée : Si c'est un range
Dim Zone_nommée as Range
Si c'est un "NOM"
Dim Zone_nommée as Name

Pour que la déclaration de chaque variable soit affectée
du type désigné, Chacune des variables doit être affecté
de son type ... ton truc "Public FE, Zone_nommée As Object "
fait en sorte que seul Zone_nommée reçoit le type Object

Les trucs de GOSUB or Return:
C'est à éviter... en remplacement tu peux utiliser
Un "Select Case"

L'Utilisation des crochets droits, tu devrais oublier ça ... laisse ça
à ceux qui peuvent se le permettent .... des aguerris en vba.

Si Zone_nommée = FE.[Nom1]
*** si "Nom1" est une plage de cellule, cela signifie
que Zone_Nommée est devenu un tableau et non pas un
"Objet" comme le type que tu lui a affecté dans ta déclaration
de variable...

Set Zone_nommée = Sheets("Feuil1").[NOM1]
message d'erreur
*** Quel est ce message d'erreur?
La ligne de code est OK, si "NOM1" représente une
plage de cellules....mais la façon dont tu présentes ton code,
difficile de savoir ce que tu tentes de faire et ce que tes variables
représentes.








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

Bonjour,
Je sèche sur une utilisation de zones nommées
Soit :
Public FE, Zone_nommée As Object

Set FE = sheets("Feuil1")

'Zone_nommée varie suivant un on X, Gosub 1, 2, 3 etc

Sheets("Feuil2").cells(1,2) þ.[zone_mommée]

1: Zone_nommée = FE.[Nom1] : Return
2: Zone_nommée = FE.[Nom2] : Return
3: Zone_nommée = FE.[Nom3] : Return

Comment déclarer [Zonée_ nommée] = un nom de mon classeur NOM1, NOM2, NOM3
etc ....
j'ai essayé avec
Set Zone_nommée = Sheets("Feuil1").[NOM1]
message d'erreur

Merci d'avance
--
Cordialement