[Résolu]Syntaxe pour la définition des plages de cellules

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
dourts
Fraîchement OOthentifié
Messages : 7
Inscription : 04 déc. 2014 21:57

[Résolu]Syntaxe pour la définition des plages de cellules

Message par dourts »

Bonjour,

Je cherche à créer 2 listes déroulantes en cascade, à partir de données stockées dans un autre classeur que celui où les listes s'affichent.

La premiere liste définie grâce à Données>Validité>Criteres fonctionne bien, en ayant précisé dans le champ Source:

Code : Tout sélectionner

'file:///C:/users/fabrice/desktop/fichier_A.ods'#Feuille1.A3:A9
La seconde liste doit tenir compte du choix fait dans la première, j'ai donc voulu nommer des plages de cellules faisant référence aux choix possibles:
En ayant selectionné la cellule où s'affiche la premiere liste: Insertion>Noms>Définir,
dans le champ Assigné à, si je saisis quelque chose du genre:

Code : Tout sélectionner

'file:///c:/users/fabrice/desktop/fichier_A.ods'#Feuille1.B3:B6
et ben... ça plante: Err:502 à l'emplacement de la seconde liste (après avoir utilisé la fonction Indirect).

Ce qui m'interpelle, c'est que si je réunis tout en seul fichier (l'affichage des listes et les données utilisées pour ces listes), et que je refais la manip à l'identique, notamment pour le champ "Assignée à" du nommage des plages de cellules en gardant la syntaxe:

Code : Tout sélectionner

'file:///c:/users/fabrice/desktop/fichier_A.ods'#Feuille1.B3:B6
ça ne marche toujours pas, alors que la syntaxe simple

Code : Tout sélectionner

Feuille1.B3:B6
suffit et fonctionne...

J'espere avoir été clair(pas sûr...), je me suis appuyé sur le tuto de Gerard24 en essayant de l'adapter à 2 classeurs distincts, sans succès...

Merci d'avance de votre aide...
Dernière modification par dourts le 13 déc. 2014 10:51, modifié 1 fois.
OpenOffice 3.4 sur 7 pro
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9977
Inscription : 28 août 2010 08:45

Re: syntaxe pour la définition des plages de cellules distan

Message par micmac »

Bonjour et bienvenue sur le forum,
votre signature a écrit : OpenOffice 3.4 sur 7 pro
Votre signature indique que vous disposez d'une version obsolète de OpenOffice.
http://oooforum.free.fr/index.php/2013/ ... ice-3-3-0/
Est-ce un choix, une erreur, un oubli, une obligation ?
Dans ce dernier cas, mentionnez-le dans votre signature par "Obligation de version".

Pour connaître la version que vous possédez

Pour vous mettre à jour de la dernière version :
Tutoriels d'installation.

Accès direct à votre signature pour la corriger.

Cordialement.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
OpenOffice > Outils > Options sur Windows = OpenOffice > Préférences sur macOS
zeguedon
ManitOOu
ManitOOu
Messages : 3031
Inscription : 02 juil. 2014 17:25

Re: syntaxe pour la définition des plages de cellules distan

Message par zeguedon »

Bonjour,

Tu devrais déjà nous joindre un fichier "Source" disons, qui contient tes plages de données bidon pour le test, tes deux listes en cascade, fonctionnelles à l'intérieur du fichier. Un repère pour dire laquelle appelle l'autre. A partir de ça on devrait bien trouver la solution.
Mais dis toi bien que sans fichier réaliste c'est pas gagné.

A+
Comment baliser [Résolu] ?
AOO
LibreOffice
Sous Linux
Avatar de l’utilisateur
cypher.sephiroth
Membre OOrganisé
Membre OOrganisé
Messages : 90
Inscription : 09 janv. 2012 17:10
Localisation : 31

Re: syntaxe pour la définition des plages de cellules distan

Message par cypher.sephiroth »

Bonjour,

Les listes déroulantes et leurs enchaînements éventuels sont extrêmement bien expliquées sur le tutoriel suivant : https://forum.openoffice.org/fr/forum/v ... 29&t=22412
(et quand j'ai eu à en faire, cela m'a bien aidé)

Bonne journée.
J'utilise LibreOffice 4.3.6.2 sur Windows 7 64 bits pro
--
Et parfois, ça fait "Coin !"...
Avatar de l’utilisateur
tintin
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10088
Inscription : 18 juil. 2008 15:29
Localisation : F-Oise

Re: syntaxe pour la définition des plages de cellules distan

Message par tintin »

Bonjour,
[b][color=#404080]dourts[/color][/b] a écrit :je me suis appuyé sur le tuto de Gerard24
[b][color=#404080]cypher.sephiroth[/color][/b] a écrit :le tutoriel suivant : https://forum.openoffice.org/fr/forum/v ... 29&t=22412
Il doit s'agir du même tutoriel.
AOO 4.1.16 et LibO 25.2.7 / macOS Intel 13.7.8 Ventura
Adoptium-temurinJDK-jre_1.8.0_472 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
dourts
Fraîchement OOthentifié
Messages : 7
Inscription : 04 déc. 2014 21:57

Re: syntaxe pour la définition des plages de cellules distan

Message par dourts »

tintin a écrit :Bonjour,
[b][color=#404080]dourts[/color][/b] a écrit :je me suis appuyé sur le tuto de Gerard24
[b][color=#404080]cypher.sephiroth[/color][/b] a écrit :le tutoriel suivant : https://forum.openoffice.org/fr/forum/v ... 29&t=22412
Il doit s'agir du même tutoriel.
Je parlais de ce tuto en effet, et à titre de test, je me permets de vous suggérer de prendre les même données et la même procédure, mais de créer un fichier pour stocker les données et un autre pour afficher les listes déroulantes...
OpenOffice 3.4 sur 7 pro
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2791
Inscription : 16 avr. 2010 13:31

Re: syntaxe pour la définition des plages de cellules distan

Message par OOotremer971 »

Bonjour,

Oui, mais si tu pouvais joindre un fichier, ça nous aiderait bien en tous cas.

Merci
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian GNU/Linux 12 (bookworm)
dourts
Fraîchement OOthentifié
Messages : 7
Inscription : 04 déc. 2014 21:57

Re: syntaxe pour la définition des plages de cellules distan

Message par dourts »

Bon, à la demande quasi générale :lol: , voici 2 fichiers pour faire les manip...

Evidemment, après les avoir récupérés, il faut modifier les chemins d'accès dans Données>Validité>Criteres>onglet Plage de données>Source, ainsi que dans Insertion>Noms>Définir>Assignée à, en fonction de l'endroit où l'utilisateur stocke ces fichiers...

Merci encore de vous pencher sur mon problème...
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 3.4 sur 7 pro
dourts
Fraîchement OOthentifié
Messages : 7
Inscription : 04 déc. 2014 21:57

Re: syntaxe pour la définition des plages de cellules distan

Message par dourts »

Le modérateur a écrit : :alerte: Merci de ne pas poster plusieurs messages à la suite !
Si vous devez ajouter un complément d'information, le bouton "Editer" à la droite du message permet d'y remédier.

En attendant une prochaine réponse, vous pouvez participer également en répondant à d'autres questions sur notre forum.
Et pour donner du grain à moudre aux neurones des aimables contributeurs, voici un fichier qui contient à la fois les listes (en feuille 1) et les données (en feuille 2).

Dans ce fichier, 2 des 3 plages de cellules sont définies par la syntaxe "simplifiée" (valable puisqu'on est dans le même classeur) du type

Code : Tout sélectionner

$feuille2.$B$3:$B$5
->ça marche...
Pour la 3eme plage, j'ai voulu définir la plage de cellule en donnant le chemin complet du fichier du type

Code : Tout sélectionner

'file:///c:/users/fabrice/desktop/fichier_unique.ods'#$feuille2.$B$3:$B$5
--> ça ne marche pas (err:502)
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 3.4 sur 7 pro
Avatar de l’utilisateur
cypher.sephiroth
Membre OOrganisé
Membre OOrganisé
Messages : 90
Inscription : 09 janv. 2012 17:10
Localisation : 31

Re: Syntaxe pour la définition des plages de cellules distan

Message par cypher.sephiroth »

Bonjour,

Là, comme ça, pif-pouf, sans test, je pense que la piste serait de nommer et lier la plage de cellules source. Voir ce tutoriel : https://wiki.documentfoundation.org/ima ... onnees.pdf
Peut-être commencer par une copie sur une feuille masquée pour bien comprendre comme cela fonctionne ?

Bonne journée.
J'utilise LibreOffice 4.3.6.2 sur Windows 7 64 bits pro
--
Et parfois, ça fait "Coin !"...
dourts
Fraîchement OOthentifié
Messages : 7
Inscription : 04 déc. 2014 21:57

Re: Syntaxe pour la définition des plages de cellules distan

Message par dourts »

cypher.sephiroth a écrit :Bonjour,
Là, comme ça, pif-pouf, sans test, je pense que la piste serait de nommer et lier la plage de cellules source. Voir ce tutoriel : https://wiki.documentfoundation.org/ima ... onnees.pdf
Ok, je vais potasser ça, je ne maîtrise pas du tout la notion de liens entre données... :shock:
Peut-être commencer par une copie sur une feuille masquée pour bien comprendre comme cela fonctionne ?
Quel est l'avantage de passer par une feuille masquée?

Bonne journée.
OpenOffice 3.4 sur 7 pro
Avatar de l’utilisateur
cypher.sephiroth
Membre OOrganisé
Membre OOrganisé
Messages : 90
Inscription : 09 janv. 2012 17:10
Localisation : 31

Re: Syntaxe pour la définition des plages de cellules distan

Message par cypher.sephiroth »

Bonjour Dourts,

La partie qui te concerne serait à partir de la page 16.

J'avais dans l'idée d'intégrer les données sur une page masquée, puisque je n'arrive pas à combiner lien externe et validité des données par enchaînement de liste. Après, ce n'est qu'une suggestion. Ce genre de lien s'actualise régulièrement, comme tu pourras le constater.

Bonne journée.
J'utilise LibreOffice 4.3.6.2 sur Windows 7 64 bits pro
--
Et parfois, ça fait "Coin !"...
phip
HédOOniste
HédOOniste
Messages : 2016
Inscription : 09 juin 2010 18:13

Re: Syntaxe pour la définition des plages de cellules distan

Message par phip »

Bonjour
a tu essayé le lien DDE
un exemple dans les fichiers joints liste de validité B1
cordialement
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Comment baliser correctement ?
AOO 4.1.4 Win10 Famille 1709
dourts
Fraîchement OOthentifié
Messages : 7
Inscription : 04 déc. 2014 21:57

Re: Syntaxe pour la définition des plages de cellules distan

Message par dourts »

phip a écrit :Bonjour
a tu essayé le lien DDE
un exemple dans les fichiers joints liste de validité B1
cordialement

Bonjour phip,

On s'approche de la verité... J'ai constaté avec tes fichiers joints que ça marchait, mais je ne comprends pas pourquoi...

Quand tu définis ta fonction DDE de la façon suivante:

Code : Tout sélectionner

DDE("soffice";"file:///C:/Users/fabrice/desktop/FSource.ods";A1)
, à quoi fait référence l'argument A1????

Si je compare ta syntaxe à celle de la bible https://wiki.openoffice.org/wiki/FR/Doc ... nction_DDE, je n'y retrouve pas mes petits...

Merci d'avance...
OpenOffice 3.4 sur 7 pro
phip
HédOOniste
HédOOniste
Messages : 2016
Inscription : 09 juin 2010 18:13

Re: Syntaxe pour la définition des plages de cellules distan

Message par phip »

Bonjour
dourts a écrit :à quoi fait référence l'argument A1????
a tu regardé le fichier cible liste de validité
A1 liste choix marque
B1 choix modèle tenant compte du choix A1
  • A1 correspond au contenu de la liste de validité de la marque.
    remplacer A1 par Citroën
    donc de la plage nommée des modèles dans le fichier source
    $B2:$B6
Capturer.PNG
Capturer2.PNG
c'est la demande faite au début de ce fil
dourts a écrit :La seconde liste doit tenir compte du choix fait dans la première,
cordialement
 Ajout : avec l'exemple du lien
Exemples :

=DDE("soffice";"C:\OpenOffice\test1.ods";"Feuille1.C7")
crée un lien à la cellule C7 sur la Feuille1 du fichier Calc test1.ods et en retourne le contenu.
=DDE("soffice";"file:///C:/Users/fabrice/desktop/FSource.ods";A1)
= DDE Idem
"soffice" Idem
"C:\OpenOffice\test1.ods" notre fichier source
"file:///C:/Users/fabrice/desktop/FSource.ods"

"Feuille1.C7" A1 voir ci dessous

A1, égale au contenu de A1 fichier cible soit Citroën
qui correspond à la plage $Feuille1.$B$2:$B$6 du fichier source, nommée Citroën
 
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Comment baliser correctement ?
AOO 4.1.4 Win10 Famille 1709
dourts
Fraîchement OOthentifié
Messages : 7
Inscription : 04 déc. 2014 21:57

Re: Syntaxe pour la définition des plages de cellules distan

Message par dourts »

"Feuille1.C7" A1 voir ci dessous

A1, égale au contenu de A1 fichier cible soit Citroën
qui correspond à la plage $Feuille1.$B$2:$B$6 du fichier source, nommée Citroën

C'est ce point qui me troublait: je m'attendais à trouver:
  • un argument entre guillemets
  • qui fait référence au fichier Source et non pas au fichier cible
Mais visiblement comme la liste de validité de la cellule du fichier cible fait référence à des plages nommées du fichier Source, on retombe sur nos pattes...
Le raisonnement ne me parait pas super intuitif :tesfou: , mais ça marche :bravo:

Sujet résolu, merci à phip, cypher et à tous ceux qui se sont penchés sur mon problème...
OpenOffice 3.4 sur 7 pro