Incrémenter de colonne en lignes

Résolu
Murielle!! Messages postés 76 Statut Membre -  
Murielle!! Messages postés 76 Statut Membre -
Bonjour,
Mon niveau Excel laisse à désirer j'ai vraiment de votre aide svp.
J'essaye d'incrémenter des cellules en lignes pour les mettres en colonnes en associant une cellule à une autre

Exemple:
Associer 2 cellules ensemble: A2 avec B1 = A2&"-"&B1 (là tout va bien pour ça)
Lignes: B1 à U1 J'ai des chiffres de 1 à 20
Colonnes: A2 à A9 J'ai des chiffres de 1 à 8

En A13, j'ai essayer cette formule: $A$2&"-"&DECALER(B1,0,1) et incrémenter vers le bas pour avoir 1-2, 1-3, jusqu'à 1-20 mais ça ne fonctionne pas.

Est-ce que quelqu'un comprend mon problème? merci pour votre aide

3 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    Essaies ceci en A12
    =INDEX($A$2:$A$9;1+(ENT(LIGNE()-12)/20);1) & "-" & INDEX($B$1:$U$1;1;1+MOD(LIGNE()-12;20))
    à tirer vers le bas

    Cdlmnt
    0
    1. Murielle!! Messages postés 76 Statut Membre
       
      Bonjour!! Wow ça fonctionne à merveille! Merci beaucoup vraiment! C'est juste que j'aimerais comprendre cette formule, est-ce possible de l'expliquer stp?
      0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Ce n'est qu'un peu d'arithmétique ;-)

    NDEX($A$2:$A$9;1+(ENT(LIGNE()-12)/20);1)
    ENT(LIGNE()-12)/20) renvoie Q = le quotient entier de la division du n° de ligne -12 par 20
    de la ligne 12 ,à la ligne 31 on a LIGNE()-12 < 20 et Q = 0
    de la ligne 32 ,à la ligne 31 on a 20 <= LIGNE()-12 < 40 et Q = 1
    etc ...
    INDEX($A$2:$A$9;1+Q;1)
    va prendre dans la plage A2:A9, la valeur de la cellule située à la ligne Q (de cette plage) et en colonne 1

    INDEX($B$1:$U$1;1;1+MOD(LIGNE()-12;20))
    MOD(LIGNE()-12;20)
    renvoie R = le reste de la division entière du n° de ligne - 12 par 20
    en ligne 12, LIGNE()-12 = 0 et R = 0
    en ligne 13, LIGNE()-12 = 1 et R = 1
    ...
    en ligne 31, LIGNE()-12 = 31-12 = 19 et R = 19
    en ligne 32, R = LIGNE()-12 = 20 et R = 0
    etc ...
    INDEX($B$1:$U$1;1;1+R)
    va prendre dans la plage B1:U1 la valeur de la cellule située en ligne 1 (de cette plage) et en colonne 1+R

    Cdlmnt
    0
    1. Murielle!! Messages postés 76 Statut Membre
       
      Je vais essayer de décortiquer ça, merci d'avoir pris le temps.
      Donnes-tu des cours par hasard? ou sais-tu comment m'inscrire à un cours de ce genre?
      0
  3. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Pas de cours :-(
    Tu as ici les fiches pratiques de CCM
    https://www.commentcamarche.net/contents/excel-tableur-1992167239

    Bon courage
    0
    1. Murielle!! Messages postés 76 Statut Membre
       
      Parfait merci!
      0