OVH Cloud OVH Cloud

Validation

4 réponses
Avatar
El pequeno
Bonjour à tous

Quelqu’un pourrait t’il me donner la syntaxe EXACT que l’on doit
utiliser pour faire référence à une plage d’une feuille autre que celle
sur laquelle on applique la propriété .Formula1 de la méthode .Add de
l’objet Validation ?
Je me doute bien qu’il s’agit de quelque chose du type : Feuilx!$A$1:$A$2
mais après plusieurs jours à avoir testé toutes les combinaisons possibles et
imaginables avec les caractères "" ! , ( ) [ ] = ; arrivant à dépasser les
messages
« Erreur de syntaxe » mais pas « Erreur définie par l’application ou par
l’objet » je me suis décidé à consulter un psychiatre pour bénéficier d’une
ordonnance apaisante. Ce dernier, soucieux du trou de la sécu, a plutôt
décidé de me fournir l’adresse de ce forum.
Merci d’avance
PS : en répondant à cette question vous contribuez :
-A sauver le peu de cheveux et d’ongles qui me reste
-A faire progresser l’industrie automobile française dans un marché « soumis
à une très forte concurrence … » ( c’est ce qu’il me dise quand je réclame
une augmentation)
Slts

4 réponses

Avatar
anonymousA
bonjour,

en VBA, un exemple. Ici si tu places ton curseur sur une cellule d'une
feuille différente de Feuil2, la cellule active recevra une liste de
validation référencée sur les cellules B2 à B6 de la feuille2

ActiveWorkbook.Names.Add Name:="liste", RefersTo:="þuil2!$B$2:$B$6"

With ActiveCell.Validation
.Delete
.Add Type:=xlValidateList, Formula1:="=liste"
End With

sans VBA , les différentes manières d'affecter à une liste de validation
une source dont le parent est différent de la cellule sur laquelle on
applique la validation

'*********************************************************************************
'Comment faire référence à une liste dans une autre feuille par Données
Validation

'Ecrire la liste sur la feuille 2 p.e (mettons toto, titi, tata que les
cellules
'de A1 à A3. Donner un nom à cette liste , mettons listenoms.
'Aller sur la feuille 1, prendre 1 cellule et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =listenoms.

'*********************************************************************************
'Comment faire référence à une liste dans un autre classeur par Données
Validation

'Ecrire la liste sur le classeur1 dans la feuille 1 p.e (mettons toto,
titi, tata
'sur les cellules de A1 à A3. Donner un nom à cette liste , mettons lnoms.
'Aller sur le classeur2 et faire Insertion/définir un nom. Taper p.e le
nom Noms1
'et écrire en toute lettres dans la fenêtre RefEdit =Classeur1!lnoms.
'Puis aller dans la cellule devant recevoir la validation et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =Noms1.
'Attention: pour que ca puisse marcher, il faut que le fichier Classeur
1 soit ouvert.

A+

Bonjour à tous

Quelqu’un pourrait t’il me donner la syntaxe EXACT que l’on doit
utiliser pour faire référence à une plage d’une feuille autre que celle
sur laquelle on applique la propriété .Formula1 de la méthode .Add de
l’objet Validation ?
Je me doute bien qu’il s’agit de quelque chose du type : Feuilx!$A$1:$A$2
mais après plusieurs jours à avoir testé toutes les combinaisons possibles et
imaginables avec les caractères "" ! , ( ) [ ] = ; arrivant à dépasser les
messages
« Erreur de syntaxe » mais pas « Erreur définie par l’application ou par
l’objet » je me suis décidé à consulter un psychiatre pour bénéficier d’une
ordonnance apaisante. Ce dernier, soucieux du trou de la sécu, a plutôt
décidé de me fournir l’adresse de ce forum.
Merci d’avance
PS : en répondant à cette question vous contribuez :
-A sauver le peu de cheveux et d’ongles qui me reste
-A faire progresser l’industrie automobile française dans un marché « soumis
à une très forte concurrence … » ( c’est ce qu’il me dise quand je réclame
une augmentation)
Slts



Avatar
El pequeno
CA MARCHE !
un grand merci pour ta réponse. J'aurais du dire que c'était
pour VBA, cela t'aurais évité d'avoir l'amabilité de recopier
les solutions sans VBA.
Slts. A plus pour d'autres casse tete chinois


bonjour,

en VBA, un exemple. Ici si tu places ton curseur sur une cellule d'une
feuille différente de Feuil2, la cellule active recevra une liste de
validation référencée sur les cellules B2 à B6 de la feuille2

ActiveWorkbook.Names.Add Name:="liste", RefersTo:="þuil2!$B$2:$B$6"

With ActiveCell.Validation
.Delete
.Add Type:=xlValidateList, Formula1:="=liste"
End With

sans VBA , les différentes manières d'affecter à une liste de validation
une source dont le parent est différent de la cellule sur laquelle on
applique la validation

'*********************************************************************************
'Comment faire référence à une liste dans une autre feuille par Données
Validation

'Ecrire la liste sur la feuille 2 p.e (mettons toto, titi, tata que les
cellules
'de A1 à A3. Donner un nom à cette liste , mettons listenoms.
'Aller sur la feuille 1, prendre 1 cellule et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =listenoms.

'*********************************************************************************
'Comment faire référence à une liste dans un autre classeur par Données
Validation

'Ecrire la liste sur le classeur1 dans la feuille 1 p.e (mettons toto,
titi, tata
'sur les cellules de A1 à A3. Donner un nom à cette liste , mettons lnoms.
'Aller sur le classeur2 et faire Insertion/définir un nom. Taper p.e le
nom Noms1
'et écrire en toute lettres dans la fenêtre RefEdit =Classeur1!lnoms.
'Puis aller dans la cellule devant recevoir la validation et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =Noms1.
'Attention: pour que ca puisse marcher, il faut que le fichier Classeur
1 soit ouvert.

A+

Bonjour à tous

Quelqu’un pourrait t’il me donner la syntaxe EXACT que l’on doit
utiliser pour faire référence à une plage d’une feuille autre que celle
sur laquelle on applique la propriété .Formula1 de la méthode .Add de
l’objet Validation ?
Je me doute bien qu’il s’agit de quelque chose du type : Feuilx!$A$1:$A$2
mais après plusieurs jours à avoir testé toutes les combinaisons possibles et
imaginables avec les caractères "" ! , ( ) [ ] = ; arrivant à dépasser les
messages
« Erreur de syntaxe » mais pas « Erreur définie par l’application ou par
l’objet » je me suis décidé à consulter un psychiatre pour bénéficier d’une
ordonnance apaisante. Ce dernier, soucieux du trou de la sécu, a plutôt
décidé de me fournir l’adresse de ce forum.
Merci d’avance
PS : en répondant à cette question vous contribuez :
-A sauver le peu de cheveux et d’ongles qui me reste
-A faire progresser l’industrie automobile française dans un marché « soumis
à une très forte concurrence … » ( c’est ce qu’il me dise quand je réclame
une augmentation)
Slts






Avatar
El pequeno
Bonjour
Un petit bémol toutefois après mis en œuvre de la solution dans
l’ensemble du programme : lorsque les valeurs des cellules
de référence sont constituées de chiffres et de lettres, je retrouve bel et
bien ma liste de validation sur les cellules souhaitées, mais je peux changer
la valeur de ces dernières sans qu’Excel ne me dise mot. Si les valeurs des
cellules
de référence sont constituées uniquement de texte tout va bien.
J’ai trouvé une solution de contournement mais suis preneur d’autres
Solutions qui seront probablement plus élégantes et pratiques que la mienne



bonjour,

en VBA, un exemple. Ici si tu places ton curseur sur une cellule d'une
feuille différente de Feuil2, la cellule active recevra une liste de
validation référencée sur les cellules B2 à B6 de la feuille2

ActiveWorkbook.Names.Add Name:="liste", RefersTo:="þuil2!$B$2:$B$6"

With ActiveCell.Validation
.Delete
.Add Type:=xlValidateList, Formula1:="=liste"
End With

sans VBA , les différentes manières d'affecter à une liste de validation
une source dont le parent est différent de la cellule sur laquelle on
applique la validation

'*********************************************************************************
'Comment faire référence à une liste dans une autre feuille par Données
Validation

'Ecrire la liste sur la feuille 2 p.e (mettons toto, titi, tata que les
cellules
'de A1 à A3. Donner un nom à cette liste , mettons listenoms.
'Aller sur la feuille 1, prendre 1 cellule et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =listenoms.

'*********************************************************************************
'Comment faire référence à une liste dans un autre classeur par Données
Validation

'Ecrire la liste sur le classeur1 dans la feuille 1 p.e (mettons toto,
titi, tata
'sur les cellules de A1 à A3. Donner un nom à cette liste , mettons lnoms.
'Aller sur le classeur2 et faire Insertion/définir un nom. Taper p.e le
nom Noms1
'et écrire en toute lettres dans la fenêtre RefEdit =Classeur1!lnoms.
'Puis aller dans la cellule devant recevoir la validation et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =Noms1.
'Attention: pour que ca puisse marcher, il faut que le fichier Classeur
1 soit ouvert.

A+

Bonjour à tous

Quelqu’un pourrait t’il me donner la syntaxe EXACT que l’on doit
utiliser pour faire référence à une plage d’une feuille autre que celle
sur laquelle on applique la propriété .Formula1 de la méthode .Add de
l’objet Validation ?
Je me doute bien qu’il s’agit de quelque chose du type : Feuilx!$A$1:$A$2
mais après plusieurs jours à avoir testé toutes les combinaisons possibles et
imaginables avec les caractères "" ! , ( ) [ ] = ; arrivant à dépasser les
messages
« Erreur de syntaxe » mais pas « Erreur définie par l’application ou par
l’objet » je me suis décidé à consulter un psychiatre pour bénéficier d’une
ordonnance apaisante. Ce dernier, soucieux du trou de la sécu, a plutôt
décidé de me fournir l’adresse de ce forum.
Merci d’avance
PS : en répondant à cette question vous contribuez :
-A sauver le peu de cheveux et d’ongles qui me reste
-A faire progresser l’industrie automobile française dans un marché « soumis
à une très forte concurrence … » ( c’est ce qu’il me dise quand je réclame
une augmentation)
Slts






Avatar
anonymousA
bonjour,

je ne constate absolument pas ce type de problème. Ce qui peut se
produire par contre, c'est que si la liste possède une valeur vide (je
dis bien vide) , alors Excel accepte n'importe quelle valeur dans la
cellule qui abrite Données/Validation.

A+

Bonjour
Un petit bémol toutefois après mis en œuvre de la solution dans
l’ensemble du programme : lorsque les valeurs des cellules
de référence sont constituées de chiffres et de lettres, je retrouve bel et
bien ma liste de validation sur les cellules souhaitées, mais je peux changer
la valeur de ces dernières sans qu’Excel ne me dise mot. Si les valeurs des
cellules
de référence sont constituées uniquement de texte tout va bien.
J’ai trouvé une solution de contournement mais suis preneur d’autres
Solutions qui seront probablement plus élégantes et pratiques que la mienne




bonjour,

en VBA, un exemple. Ici si tu places ton curseur sur une cellule d'une
feuille différente de Feuil2, la cellule active recevra une liste de
validation référencée sur les cellules B2 à B6 de la feuille2

ActiveWorkbook.Names.Add Name:="liste", RefersTo:="þuil2!$B$2:$B$6"

With ActiveCell.Validation
.Delete
.Add Type:=xlValidateList, Formula1:="=liste"
End With

sans VBA , les différentes manières d'affecter à une liste de validation
une source dont le parent est différent de la cellule sur laquelle on
applique la validation

'*********************************************************************************
'Comment faire référence à une liste dans une autre feuille par Données
Validation

'Ecrire la liste sur la feuille 2 p.e (mettons toto, titi, tata que les
cellules
'de A1 à A3. Donner un nom à cette liste , mettons listenoms.
'Aller sur la feuille 1, prendre 1 cellule et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =listenoms.

'*********************************************************************************
'Comment faire référence à une liste dans un autre classeur par Données
Validation

'Ecrire la liste sur le classeur1 dans la feuille 1 p.e (mettons toto,
titi, tata
'sur les cellules de A1 à A3. Donner un nom à cette liste , mettons lnoms.
'Aller sur le classeur2 et faire Insertion/définir un nom. Taper p.e le
nom Noms1
'et écrire en toute lettres dans la fenêtre RefEdit =Classeur1!lnoms.
'Puis aller dans la cellule devant recevoir la validation et faire
Données/validation/Autoriser/Liste
'Dans Source, écrire =Noms1.
'Attention: pour que ca puisse marcher, il faut que le fichier Classeur
1 soit ouvert.

A+


Bonjour à tous

Quelqu’un pourrait t’il me donner la syntaxe EXACT que l’on doit
utiliser pour faire référence à une plage d’une feuille autre que celle
sur laquelle on applique la propriété .Formula1 de la méthode .Add de
l’objet Validation ?
Je me doute bien qu’il s’agit de quelque chose du type : Feuilx!$A$1:$A$2
mais après plusieurs jours à avoir testé toutes les combinaisons possibles et
imaginables avec les caractères "" ! , ( ) [ ] = ; arrivant à dépasser les
messages
« Erreur de syntaxe » mais pas « Erreur définie par l’application ou par
l’objet » je me suis décidé à consulter un psychiatre pour bénéficier d’une
ordonnance apaisante. Ce dernier, soucieux du trou de la sécu, a plutôt
décidé de me fournir l’adresse de ce forum.
Merci d’avance
PS : en répondant à cette question vous contribuez :
-A sauver le peu de cheveux et d’ongles qui me reste
-A faire progresser l’industrie automobile française dans un marché « soumis
à une très forte concurrence … » ( c’est ce qu’il me dise quand je réclame
une augmentation)
Slts