Bonjour Bernard, bonjour à tous,
Il n'y a pas de sujet en l'espèce, je suis retraité maintenant ; j'aide
des amis et un peu tout le monde quand de besoin. Mais je vous rejoins
sur l'éthique professionnelle à adopter dans ce domaine. J'étais
vigilant sur ce point quand j'étais actif et j'avais par ailleurs un
budget "Conseil et assistance" qui me le permettait.
Pour ce qui des formules, je suis en train de transformer mes premières
feuilles et cela fonctionne dans le monde L.O. Je n'ai pas encore
tester le transfert vers Excel, ni l'utilisation de Index/Equiv à la
place d'Indirect.
A faire plus tard...
Merci à tous, en tout cas.
Pierre
Le 13/11/2025 à 16:23, Bernard Schoenacker a écrit :
Bonjour Monsieur,
Merci pour votre participation à cette liste.
Je me permets toutefois d’attirer votre attention sur un point :
le sujet que vous abordez dépasse le cadre habituel d’une
liste d’entraide bénévole.
La nature de votre besoin relève d’un usage professionnel
et nécessite, en conséquence, l’intervention d’un
prestataire de service spécialisé.
Je vous remercie pour votre compréhension et vous
souhaite une bonne journée.
Sincèrement,
Bernard Schœnacker
----- Achat Touzeau<achat@touzeau.nom.fr> a écrit :
Bonjour à tous,
et merci à Claire, Christian et Bernard pour leur réponse.
J'ai fait un petit fichier simplifié pour tenter d'expliciter le Bug
:
Il recopie le tableau de la feuille indiquée en B1
Une formule (dans la cellule L4C1 ou A4) est écrite :
calc avec option mode Excel L1C1
=INDIRECT("'"&R1C2&"'!$A"&LIGNE())
calc avec option mode Excel A1
=INDIRECT("'"&$B$1&"'!$A"&LIGNE())
calc avec option mode Calc A1
=INDIRECT("'"&$B$1&"'!$A"&LIGNE())
Les mêmes 3 fichiers ODS exportés en xlsx (format 365 - 2007) et
ouvert dans Excel (2024) :
en xlsx mode Excel L1C1
=@INDIRECT("'"&L1C2&"'!$A"&LIGNE())
en xlsx mode Excel A1
=@INDIRECT("'"&$B$1&"'!$A"&LIGNE())
en xlsx mode Calc A1
=@INDIRECT("'"&$B$1&"'!$A"&LIGNE())
(Oubliez le "@" dans =@INDIRECT..., ce serait une fonctionnalité
récente d'Excel pour indiquer explicitement les "entrées" d'un
tableau
dynamique ; pour autant que je puisse comprendre...)
Donc, avec l'option Calc A1 ou Excel A1, exporter en xlsx ne change
rien, la formule reste identique.
Mais avec l'option Excel L1C1, la référence change de R1C2 à L1C2.
Ce
qui est ... correct !!!
Bref, le fonctionnement est normal ??
Je vais donc me pencher vers vos propositions, travailler avec
Adresse,
voire avec Index/Equiv, car comme vous l'indiquez, le fait de
travailler
avec des chaînes de caractères peut sans doute masquer des choses
essentielles.
Merci à vous.
Pierre
Le 13/11/2025 à 03:49, Bernard Schoenacker a écrit :
Bonjour,
Le #REF! vient du fait que, dans une chaîne R1C1, Excel FR attend
“L…C…” (Ligne/Colonne) alors que LibreOffice utilise “R…C…”
(Row/Column). Ni Excel ni LO ne traduisent ces lettres à l’intérieur
d’un texte à l’import/export, donc “R1C…” casse sous Excel FR, et
“L1C…” casse sous LO.
Solution robuste : éviter d’écrire “R/L” en dur et générer
l’adresse avec ADDRESS(), puis l’injecter dans INDIRECT(). Par ex. au
lieu de ...'!$A"&LIGNE() :
Copier le code
=INDIRECT( ADDRESS(LIGNE(); 1; 3; 1;
INDIRECT("_R1C_"&(COLONNE()+1); 0)) )
(3 = colonne absolue/ligne relative, 1 = style A1 portable).
Variante R1C1 portable :
Copier le code
=INDIRECT( ADDRESS(LIGNE(); 1; 3; 0;
INDIRECT("_R1C_"&(COLONNE()+1); 0)) )
(0 = style R1C1 ; Excel écrira “L/C”, LO “R/C”).
On peut aussi remplacer INDIRECT() par INDEX()/EQUIV() selon le
besoin, ce qui est plus rapide et plus fiable entre suites.
Réfs : discussions et docs sur la localisation R1C1 et
INDIRECT()/ADDRESS() (Ask LO, MS Q&A).
Merci et bonne journée
Bernard Schœnacker
----- C Fourcroy<cfourcroy@free.fr> a écrit :
Oups, au temps pour moi, j'ai mal interprété la formule. Je ne
vais pas
tarder à aller me coucher !
Le passage par une chaîne de caractères me semble quand même une
piste à
creuser . et l'utilisation de ADRESSE pourrait peut être
simplifier les
choses.
Le 13/11/2025 à 01:01, C Fourcroy a écrit :
Bonjour,
Il me semble qu'il manque quelque chose dans la formule : les
offsets
en mode RC doivent être entre crochet sous Calc (R[1]C et non
R1C).
(ça m'étonne même que cette formule fonctionne sous Calc qui
n'accepte
pas de référence sous forme R1C)
Dans ce cas le passage de Calc à Excel et de RC à LC ne pose
pas de
problème (NB sous Excel l'offset est entre parenthèses)
Désolé, vue l'heure qu'il est ici ( 0:55), je n'ai pas le courage
de
créer un tableau pouvant utiliser des INDRECT pour vérifier que
cela
résoud le problème. Cela vient peut être du fait qu'il faut
passer
par des chaînes de caractères. L'utilisation de INDIRECT est-elle
vraiment indispensable ?
Bon courage et bonne chance.
Christian
Le 12/11/2025 à 17:58, Achat Touzeau a écrit :
Bonjour,
Je développe pour des amis une petite appli en L.O.Calc qui
gèrent
des manifestation/évènements...
3 fichiers similaires avec une feuille par manifestation
(nom=date de
la manif) et une feuille récap qui somment les différentes
données de
chaque feuille. Tout va bien dans le monde LINUX/Xubuntu et L.O.
Malheureusement les amis sont dans le monde M$ et utilisent
seulement
Excel (S.V.P : pas de troll, chacun est libre et c'est leur
choix,
même si ce n'est pas le mien... ;-)
Dans le tableau récapitulatif,j'utilise beaucoup de redirection
(référence nom de feuille dans une cellule) et de notation
relative
type LC+1, c'est donc naturellement que j'ai coché l'option
Excel
L1C1 plutôt que rester en L.O. A1 ou Excel A1. Bizarrement dans
les
formules sous L.O. la notation est RC (RowColumn) et non pas LC
(LigneColonne) pourtant ma version LO est française (ainsi que
les
Excels utilisés)...
Exemple de formule dans calc qui fonctionne
=INDIRECT("'"&INDIRECT("_R1C_"&(COLONNE()+1);0)&"'!$A"&LIGNE())
et en plus je mélange relatif et Absolu avec le !$A
Quand j'exporte en XSLX, ça reste en RC (même formule) et ça bug
sous
excel (#Ref) il faut faire un remplacement général R1C ==> L1C
pour
retrouver un fonctionnement normal.
(=INDIRECT("'"&INDIRECT("L1C"&(COLONNE()+1);0)&"'!$A"&LIGNE()) )
Un retour sous Calc de cette formule modifiée provoque à son
tour une
erreur #Ref mais sous calc cette fois.
Je pense qu'il s'agit d'un bug de "traduction" En --> FR mais je
me
sens démuni pour corriger cela.
Avez-vous déjà constaté cela ? Faut-il un faire un rapport de
bug ?
Suis-je à côté de mes pompes ;-)
Cordialement.
Pierre
--
Envoyez un mail àusers+unsubscribe@fr.libreoffice.org pour vous
désinscrire
Les archives de la liste sont disponibles à
https://listarchives.libreoffice.org/fr/users/
Privacy Policy:https://www.documentfoundation.org/privacy
--
Envoyez un mail àusers+unsubscribe@fr.libreoffice.org pour vous
désinscrire
Les archives de la liste sont disponibles à
https://listarchives.libreoffice.org/fr/users/
Privacy Policy:https://www.documentfoundation.org/privacy
--
Envoyez un mail àusers+unsubscribe@fr.libreoffice.org pour vous
désinscrire
Les archives de la liste sont disponibles à
https://listarchives.libreoffice.org/fr/users/
Privacy Policy:https://www.documentfoundation.org/privacy