[Résolu] Comment déplacer une colonne en plusieurs lignes ?

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.
tamcom
Fraîchement OOthentifié
Messages : 1
Inscription : 12 juin 2019 22:14

[Résolu] Comment déplacer une colonne en plusieurs lignes ?

Message par tamcom »

Bonjour à toutes et à tous,

J'ai écumé le net à la recherche d'une solution à mon problème, et malheureusement je n'arrive pas à le résoudre, donc je viens vous embêter un peu.

Voilà, j'utilise LibreOffice (version 6.0.5 il me semble), et j'ai un problème dans Calc. J'ai des données météorologiques (température) en colonnes, avec les mois et années en colonnes également. Je souhaite obtenir un tableau avec les années en ligne (mes années vont de 1901 à 2016 donc ça fait beaucoup de lignes...), les mois en colonne (12 colonnes), et les températures correspondantes.
Mon problème survient quand j'essaie de déplacer mes températures en lignes de 12 valeurs. Au début j'essayais de faire un tableau croisé dynamique, mais je ne veux pas faire de calculs sur mes valeurs, donc ça ne marchait pas. J'ai ensuite trouvé une fonction intéressante, la fonction DEPLACER, mais arrivé à la deuxième ligne, calc reprend les valeurs de la première ligne (de 1 à 12) au lieu de continuer avec le compte (de 12 à 23, etc). Le plus surprenant est qu'à la 11ème ligne, il recommence à me mettre des valeurs qui correspondent à la 317ème ligne. Bref je suis perdue.
Le code est le suivant:

Code : Tout sélectionner

=DECALER($A$2;((COLONNE()-3)+((LIGNE()-2)*12));0)
J'ai pourtant bien vérifié, (COLONNE()-3)+((LIGNE()-2)*12) me compte les lignes dans l'ordre, et revient à la ligne sans problèmes en continuant le compte.

Je vous mets mes données en pièce jointe si j'y arrive pour une meilleure compréhension.


Un grand merci à qui saura m'aider!!

Bonne soirée (il est minuit chez moi)!
La modération vous a écrit: Pour faciliter la lecture, formule mise entre balises par le modérateur.

Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 2.4 sous Windows XP
Avatar de l’utilisateur
Michel JANZEF
ManitOOu
ManitOOu
Messages : 3454
Inscription : 12 janv. 2006 10:04

Re: Comment déplacer une colonne en plusieurs lignes?

Message par Michel JANZEF »

Bonjour,
Si j'ai bien compris,
Pour les années et les 12 mois :
- Sélectionnez toutes vos données
- Copier
- Sélectionnez la cellule de destination
- Édition
- Collage spécial
- Cochez " Transposer "
En revanche, je n'ai pas compris à quoi correspondent les valeurs de la colonne A
Dernière modification par Michel JANZEF le 13 juin 2019 10:08, modifié 1 fois.
AOo 4.1.15 et LibO 7.6.6.3 (x64) - Windows 10 Famille 22H2 (19045.3693) 64 bits
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9255
Inscription : 28 août 2010 08:45

Re: Comment déplacer une colonne en plusieurs lignes?

Message par micmac »

Bonjour et bienvenue sur le forum,
Dans votre signature il y a écrit : OpenOffice 2.4 sous Windows XP
tamcom a écrit :j'utilise LibreOffice (version 6.0.5
C'est cette information qui devrait être indiquée dans votre signature accompagnée de la version exacte de l'OS.

Pour connaître la version que vous possédez : https://forum.openoffice.org/fr/forum/v ... 582#p11582

Afin de profiter des dernières améliorations, il est fortement recommandé d'être à jour de la dernière version

Voici quelques exemples : LibO 6.1.6, sous Windows XP SP3, Vista SP2, Win7 SP1, Win 8.1, Win 10, Mac PPC 10.5.8, mac OS 10.14.5, Ubuntu 18.04 ...etc.

Accès direct à votre signature pour la corriger.

Cordialement.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur Mac
Jeff
GourOOu
GourOOu
Messages : 9629
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: Comment déplacer une colonne en plusieurs lignes?

Message par Jeff »

Bonjour et bienvenue,

Merci de suivre les recommandations du modérateur :wink:
tamcom a écrit :J'ai des données météorologiques (température) en colonnes, avec les mois et années en colonnes
Je vois bien les températures et les années... mais pas les mois :)
tamcom a écrit :=DECALER($A$2;((COLONNE()-3)+((LIGNE()-2)*12));0)
Cette formule, en colonne C, va chercher une valeur toutes les douze lignes, j'en déduis que pour le mois de Janvier, tu veux obtenir les températures en 1901, 1913, 1925, 1937 etc... ce qui semble être le cas dans ton fichier joint.
tamcom a écrit :Le plus surprenant est qu'à la 11ème ligne, il recommence à me mettre des valeurs qui correspondent à la 317ème ligne
Non reproduis sous ma configuration.
Si je prends la formule en C11 :

Code : Tout sélectionner

=DECALER($A$2;((COLONNE()-3)+((LIGNE()-2)*12));0)
Le décalage en ligne est donné par COLONNE()-3)+((LIGNE()-2)*12), ou bien COLONNE()-3)+((LIGNE(C11)-2)*12), qui renvoie 108.
On décale par rapport à A2 qui est déjà en ligne 2, donc on va chercher la ligne 110 (108 + 2).
Si je change le contenu de A110, cela actualise bien le résultat en C11.

Idem pour C12, ou le décalage en ligne est de (12-2) x 12 = 120 + les deux lignes de décalage 122, le contenu de A122 est celui reporté en C12.

Un tuto sur la fonction DECALER (et pas DEPLACER :mrgreen: ) :
https://forum.openoffice.org/fr/forum/v ... 29&t=42550

A +
 Ajout : Un tout petit peu plus long, une formule avec ADRESSE :

Code : Tout sélectionner

=ADRESSE(COLONNE()-3+((LIGNE()-1)*12);COLONNE($A1))
L’avantage étant de voir immédiatement les cellules visées :
AOO_forum.png
Une fois que tu es sûr de la bonne formulation, il suffit d’englober le tout dans une fonction INDIRECT :
AOO_forum1.png
Je préfère réserver l’usage de DECALER à la création de plages (d’où le but du tuto mentionné auparavant)

  
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.