[Résolu] Copie de cellule si condition

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.
Raxxel
Fraîchement OOthentifié
Messages : 2
Inscription : 20 janv. 2025 22:08

[Résolu] Copie de cellule si condition

Message par Raxxel »

Bonjour à tous;

je souhaite créer un tableur composé de plusieurs onglets. Si certaines valeurs sont présentes dans le premier onglet; elles doivent être recopiées dans le deuxième et le troisième.

J'ai trouvé le post suivant où Jean-Louis Cadeillan répond parfaitement à ma problématique:
viewtopic.php?t=35988

La méthode est en deux étapes. J'arrive à avoir une cellule qui indique le n° de ligne correspondant aux conditions désirées; mais je n'arrive pas à utiliser la fonction INDEX.

Ci-joint:
  • le fichier captaincake_01a issu du post cité en infra dont je me sert de modèle.
  • le fichier que j'essaye d'élaborer: si dans l'onglet intervention, une valeur est présente dans une cellule de la colonne AB, alors, la valeur de la colonne AJ doit être recopiée dans le deuxième onglet, à la colonne A. L'onglet donnees_de_renvoi dispose des cellules renvoyant le n° des lignes remplissant ces conditions.
J'utilise LibreOffice 24.8.4.2 sous Windows 10 x64.

Merci d'avoir pris le temps de me lire.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par micmac le 22 janv. 2025 10:52, modifié 3 fois.
Raison : Ajout de la coche verte
LibreOffice 24.8.4.2 sous Windows 10 x64
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 6057
Inscription : 02 janv. 2009 23:56

Re: Copie de cellule si condition

Message par Jean-Louis Cadeillan »

Bonjour,
Je ne suis pas sûr d'avoir compris ta démarche.
Par exemple :
Raxxel a écrit : 20 janv. 2025 23:28 alors, la valeur de la colonne AJ doit être recopiée dans le deuxième onglet, à la colonne A
Je suppose que tu veux dire la colonne B.
D'autre part, ta formule avec INDEX() en Analyse-.B11 :

Code : Tout sélectionner

=SI($Donnees_de_renvoi.C3="";"";INDEX(E11:X19;$Donnees_de_renvoi.C3;36))
est matricielle, pourquoi ?
Je n'ai pas compris non plus la plage E11:X19 ; de quelle feuille ? Pourquoi une plage multi-colonnes ?
Quant au 36, il me laisse perplexe…
Si je tente de répondre à ta demande (en remplaçant A par B) :
Raxxel a écrit : 20 janv. 2025 23:28 le fichier que j'essaye d'élaborer: si dans l'onglet intervention, une valeur est présente dans une cellule de la colonne AB, alors, la valeur de la colonne AJ doit être recopiée dans le deuxième onglet, à la colonne B
Je choisirais la formule :

Code : Tout sélectionner

=SI($Donnees_de_renvoi.C3="";"";INDEX($Intervention.AJ$1:AJ$19;$Donnees_de_renvoi.C3))
Pour la fonction INDEX(), voir l'aide (soit touche F1, soit ici).
À tester ci-joint,
Cordialement,
Jean-Louis
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 24.2.7.2 (x64 et Java 1.8.0_451) et AOO 4.1.15 (et Java x32 1.8.0_431), Windows 7 Édition Intégrale 64 SP1
Raxxel
Fraîchement OOthentifié
Messages : 2
Inscription : 20 janv. 2025 22:08

Re: Copie de cellule si condition

Message par Raxxel »

Bonjour;

tout d'abord, merci pour cette réponse rapide!

En ce qui concerne la structure du fichier, elle peut paraitre étrange car pour l'anonymiser, j'ai enlevé des onglets et modifier certaines cellules.

Je pensais que l'utilisation de INDEX nécessitait l'utilisation de matrice systématiquement. Mon erreur venait en partie de cela.

La formule fourni fonctionne parfaitement.

Merci beaucoup pour cette réponse aussi rapide qu'efficace.

Bonne journée à vous.
LibreOffice 24.8.4.2 sous Windows 10 x64