Transposer un ensemble d'enregistrements

J'ai besoin de transposer des enregistrements d'une table, mais par des groupes comme dans l'exemple ci-dessous. Je dois le faire pour de nombreux enregistrements identifiés par un numéro de ligne au début de la table.

Besoin de transposition de:

1 LastModified$Time 2011-05-10 12:57:03.0 1 Count1 0 1 Count2 58 1 LastModified$UserName mbeardsell 2 LastModified$Time 2010-03-31 21:45:53.0 2 Count1 0 2 Count2 0 2 LastModified$UserName MBeardsell 3 LastModified$Time 2006-12-13 12:55:47.0 3 Count1 1 3 Count2 0 3 LastModified$UserName markhall 

à:

  LastModified$Time Count1 Count2 LastModified$UserName 1 2011-05-10 12:57:03.0 0 58 mbeardsell 2 2010-03-31 21:45:53.0 0 0 MBeardsell 3 2006-12-13 12:55:47.0 1 0 markhall 

PS Je ne comprends pas les réponses que je reçois. Je vais reformuler ma question pour être plus clair. Je veux pouvoir le faire:

Si j'ai les valeurs:

 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 

Je veux les transposer par séries de cinq comme suit:

 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 

Je dois le faire pour de nombreux enregistrements, et je ne peux pas vraiment arrêter et passer à travers toutes les cinq cellules et tapez = Transposer (….)

Le plus simple sera:

  • Exécuter l'autofiltre sur LastModified $ Time
  • Dans la deuxième colonne des résultats, référencez la cellule Count 1 et copiez-la
  • Dans la troisième colonne des résultats, faites référence à la cellule du Compte 2 et à la copie
  • Dans la quatrième colonne des résultats, faites référence à la cellule UserName et à la copie
  • Effacer le filtre, copier les valeurs de la pâte
  • Remplacez LastModified $ Time by Nothing (comme dans Nothing)
  • Remplacer LastModified $ UserName par Nothing (comme dans Nothing)
  • Remplacer Count1 by Nothing (comme dans Nothing)
  • Remplacer Count2 par Nothing (comme dans Nothing)
  • Supprimez les lignes vierges (avec un filtre automatique)
  • Ajoutez vos titres
  • Vous avez terminé

Semblable à la réponse de @ nutsch, mais (éventuellement) avec moins de risque d'erreur (pas de formules impliquées) et dans le cas où vos données commencent, seules deux colonnes seraient:

  • Dans Data, Text to Columns (délimité par espace) [si nécessaire pour analyser une colonne].
  • Copier ColumnA: D vers ColumnE et vers I et vers, M.
  • Supprimer (décalage vers le haut) E1: P1 puis I1: P1 puis M1: P1.
  • Ajoutez Row1 et faites glisser le texte de ColumnB vers les étiquettes des colonnes pour convenir.
  • Filtrer tous, avec ColumnB désélectionner LastModified $ Time.
  • Supprimez Row3 pour finir.
  • À l'exception de ColumnA et ColumnC, supprimez les colonnes sans étiquettes.
  • Supprimez le filtre, formatez pour ajuster la largeur de la colonne.

Au-dessus (approximativement) décrit visuellement, mais compte tenu de l'élément révisé de la question:

SU495953 exemple

J'ai trouvé cette solution la plus simple:

https://www.extendoffice.com/documents/excel/3360-excel-transpose-every-5-rows.html

Assurez-vous que votre colonne de données unique se trouve dans la colonne A, commençant en A1

  1. Insérez cette formule dans une nouvelle cellule à proximité:

=INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))

  1. Modifiez les deux occurrences du nombre "5" pour correspondre à la taille de votre ensemble de groupe. (Dans ce cas – la présentation révisée – c'est 5)

  2. Faites glisser la formule vers la droite pour faire correspondre la taille de votre ensemble de groupe. (Dans ce cas, faites glisser sur 5 colonnes)

  3. Faites glisser la formule jusqu'à ce que vos données cessent de présenter (vous obtiendrez "0")