我在印度的一家小醫院工作,遇到以下問題:對於一種特殊藥物,我們有一個包含日期、ID、劑量、持續時間、下次就診的清單,我們將其作為每日工作清單(工作簿1),意味著一個ID(人)可以在此列表中多次出現。
在另一個工作簿中,我們有一個「主文件」(工作簿2),其中每個ID 僅一次,但每次人員再次到來時都會重複模式(日期、持續時間、下次訪問)(因此日期2、持續時間2、下次造訪2)
我正在尋找一種優雅的方法來將每日清單(工作簿 1)中的資料自動填入主表(工作簿 2)。因此,我假設我需要一些IF + INDEX/Match + Array 函數來查找工作簿1 中的ID,取得DATE1、DURATION1、NEXT VISIT2 的值並填寫到工作簿2 中,而不是在工作簿1 中進一步向下查找列表,找到病人下次來的時間,獲取數據並再次填寫在工作簿 2 中,但現在填寫在 DATE2 中......等等。
我添加兩張圖片來解釋問題。
每日表:
主表:
答案1
- 可以用公式找到值。您只需要標題來顯示數字,例如 1 的格式為0“首次訪問”ETC。
- 不幸的是,這些函數永遠不會處理兩件事:資料遺失和溢出。想像一下,病人第 8 次來,但它沒有出現在您的表格中,因為您只填滿了 7 次。
您可能正在尋找的功能是
=SUMPRODUCT(1*(A3>$A$3:$A$8),1*(B3=$B$3:$B$8))+1
需要將其添加到工作簿一中,並會告訴您給定會議的#,第一個:1,第二個:2 等。兩個數字。如果某人碰巧在一天內拜訪您兩次(假設您沒有記錄到時間),則僅算作一次。
答案2
正如另一個答案中所述,您可以使用公式來完成,但它可能不是最好/最簡單的解決方案,我會使用以下選項之一:
數據透視表:
如果您可以忍受它的局限性,這可能是最簡單和最優雅的解決方案:
- 目標範圍不可編輯(也許在您的情況下它甚至是積極的)。
- 您只能在表格正文中使用數字和日期值(範例中只有文字是比率,但您可以設定自訂數字格式以在數字後顯示“mg”)。
準備工作:
- 在表格中新增一個欄位 - VisitSequence: =countifs(f:f,f3,b:b,"<="&b3)
。
- 建立資料透視表。列標籤:ID;行標題:VisitSequence;值:日期、劑量、持續時間、下次就診(因為每個 ID X 日期組合只有一行,您可以使用任一總和或平均值)。
程式設計語言:
比樞軸需要更多的工作,但它更靈活。
微軟訪問:
用於您需要的報表的本機工具。這可能需要您學習一些知識,但這可能是最好的長期解決方案。