操作 Excel 中的資料以按特定列對結果進行排序

操作 Excel 中的資料以按特定列對結果進行排序

我想讓某些列(但不是全部)中的資訊顯示在行中,請參閱下面的範例。

這就是我所擁有的(不幸的是,這不允許額外的空格,因此所有內容都未對齊,請嘗試想像所有內容都對齊):

Patient     Visit 1     Visit 2     Visit 3     Visit 4(…)

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

(等等,包含數百名患者的長資料庫)

這就是我想要的樣子:

Patient     Visit type      Date

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

它不涉及任何計算,只是數據操作,基本上是對每個患者的就診進行排序,但我不確定是否有任何函數可以做到這一點,嘗試過數據透視表,但似乎並不像這樣.. ....有什麼建議嗎?如果沒有公式,沒有按鈕等,也許你可以建議一個巨集?

非常感謝!

答案1

數據如下:

在此輸入影像描述

氫2進入:

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

並向下複製。細胞內I2進入:

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

並向下複製。在J2進入:

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

並向下複製:

在此輸入影像描述

筆記:

6這些公式中的 對應於來源表中的造訪次數。調整以滿足您的需求。

答案2

目前尚不清楚您是否想要連續轉換,還是只轉換一次資料。如果您只想轉換一次數據,這裡有一個建議:讓我們假設這是您現在的數據:

在此輸入影像描述

由於每位患者最多就診 4 次,因此請手動建立第一個患者的行,如下所示:

在此輸入影像描述

對於日期列,套用 VLOOKUP,根據存取類型搜尋列:

在此輸入影像描述

現在為第二個患者手動建立行,但現在使用一些公式,您將能夠下推:

在此輸入影像描述

對於日期列,只需按下患者 1 提供的資訊即可:

在此輸入影像描述

現在,選擇患者 2 的所有區塊並按下:

在此輸入影像描述

即使沒有日期,它也會起作用

在此輸入影像描述

這適合你嗎?

答案3

我的方法使用雙向查找技術,就像上面的答案之一。

請參閱下圖,其中顯示第一個表中的樣本數據,然後在第二個表中按所需順序顯示患者清單、就診次數和日期。

在此輸入影像描述

以下是獲得的公式:

患者名單:在儲存格 A10 中,=INT((ROW(A1)-1)/5)+1

存取類型清單: 在 B10 單元格中,="Visit"&INT(MOD(ROW(A1)-1,5))+1

日期列表 在儲存格 C10 中,=INDEX($B$2:$F$8,MATCH(A10,A$2:A$8,0),MATCH(B10,$B$1:$F$1,0))

根據需要向下拖曳所有 3 個公式。

我希望這對你有幫助。

相關內容