Bearbeiten Sie die Daten in Excel, um die Ergebnisse nach einer bestimmten Spalte zu ordnen

384
Ricardo C.B.

Ich möchte, dass die Informationen in einigen Spalten (aber nicht in allen) in Zeilen angezeigt werden, siehe unten ein Beispiel.

Das ist was ich habe (leider erlaubt dies keine zusätzlichen Leerzeichen, also ist alles nicht ausgerichtet, bitte stellen Sie sich alle Ausrichtungen vor):

Patient Visit 1 Visit 2 Visit 3 Visit 4(…)  1 22Dec 12Jan 03Feb  2 3Jan 03Feb 01Mar 3 10Dec 03Jan 23Jan  (…) 

(etc, lange Datenbank mit Hunderten von Patienten)

So möchte ich, dass es so aussieht:

Patient Visit type Date  1 Visit 1 22Dec 1 Visit 2 12Jan  1 Visit 3 03Feb  2 Visit 1 23Jan  2 Visit 2 (…)  (…) 

Es handelt sich hierbei nicht um Berechnungen, sondern nur um Datenmanipulation. Die Besuche werden grundsätzlich pro Patient geordnet. Ich bin mir jedoch nicht sicher, welche Funktion dies hat. Es wurde eine Pivot-Tabelle ausprobiert, scheint aber nicht ganz so zu sein. Irgendwelche Vorschläge? Wenn es keine Formeln, keine Schaltflächen usw. gibt, können Sie vielleicht ein Makro vorschlagen?

Danke vielmals!

1
Powerpivot kann dabei helfen PeterH vor 6 Jahren 0

3 Antworten auf die Frage

1
Gary's Student

Mit Daten wie:

In H2 eingeben:

=ROUNDUP(ROWS($1:1)/6,0) 

und nach unten kopieren. In Zelle I2 geben Sie ein:

=INDEX($B$1:$G$1,MOD(ROWS($1:1)-1,6)+1) 

und nach unten kopieren. In J2 geben Sie ein:

=INDEX($B$2:$G$10,ROUNDUP(ROWS($1:1)/6,0),MOD(ROWS($1:1)-1,5)+1) 

und nach unten kopieren:

HINWEIS:

Die 6 in diesen Formeln entspricht der Anzahl der Besuche in der Quelltabelle. Passen Sie sie an Ihre Bedürfnisse an.

0
user877479

Es war nicht klar zu sein, ob Sie eine kontinuierliche Transformation wünschen oder Ihre Daten nur einmal transformieren möchten. Wenn Sie Ihre Daten nur einmal umwandeln möchten, finden Sie hier einen Vorschlag: Stellen wir uns vor, dies sind jetzt Ihre Daten:

Da Sie maximal 4 Besuche pro Patient haben, bauen Sie die Zeilen für den ersten Patienten manuell auf, wie folgt:

Wenden Sie für die Datumsspalte das VLOOKUP an, indem Sie die Spalte nach dem Besuchstyp durchsuchen:

Bauen Sie nun manuell die Zeilen für den zweiten Patienten auf, aber jetzt können Sie mit einigen Formeln nach unten drücken:

Für die Datumsspalte drücken Sie einfach das, was Sie von Patient 1 haben:

Wählen Sie nun den All-Block von Patient 2 aus und drücken Sie ihn nach unten:

Selbst wenn es kein Datum gibt, wird es funktionieren

Wird das zu dir passen?

0
Rajesh S

Mein Ansatz verwendet eine Two-Way-Lookup- Technik, genau wie eine der obigen Antworten.

Sehen Sie sich die Bilder unten an, die die Beispieldaten in der ersten Tabelle zeigen, dann die Liste der Patienten, die Besuchsnummer und das Datum, alle in der gewünschten Reihenfolge in der zweiten Tabelle.

enter image description here

Hier sind die Formeln, um das zu bekommen:

Patientenliste: in Zelle A10,=INT((ROW(A1)-1)/5)+1

Typ der Besuchstypen: in Zelle B10,="Visit"&INT(MOD(ROW(A1)-1,5))+1

Datumsliste in Zelle C10,=INDEX($B$2:$F$8,MATCH(A10,A$2:A$8,0),MATCH(B10,$B$1:$F$1,0))

Ziehen Sie alle 3 Formeln so weit wie nötig nach unten.

Ich hoffe, das hilft dir.