簡體   English   中英

Excel-“計算字段”選項中的嵌套IF /嵌套AND / OR-數據透視表

[英]Excel - Nested IF/Nested AND/OR in 'calculated field' option - pivot table

我有以下問題:

數據表中有一個列(HOUR)和另一個列(AM / PM)。 第一列中的條目包含1,2,3,4,5,6,7,8,9,10,11或12,第二列中包含“ AM”或“ PM”。 它們共同定義了事件發生的時間(關於以下問題,請注意,不允許在源數據表中創建新列或更改現有列)。 下面的公式1.)到3.)對於在上午8點至下午4點之間或在此時間范圍之外發生的事件獲取“ 1”或“ 0”非常有效,只要我在某處創建新列即可。

1.) =IF(AND(A1>=8, A1<=11),IF(B1="AM",1,0),0) + IF(AND(A1>=1, A1<=4),IF(B1="PM",1,0),0) + IF(AND(A1=12),IF(B1="PM",1,0),0)

2.) =--OR(AND(A1>=8, B1="AM", A1<>12), AND(OR(A1<=4, A1=12), B1="PM"))

3.) =--OR(AND(OR(A1={8,9,10,11}),B1="AM"), AND(OR(A1={1,2,3,4,12}), B1="PM"))

但是,我希望對“ 1”進行匯總-而不創建額外的列-作為數據透視表中的計算字段。 盡管excel在計算字段選項中根本不接受3.)公式,但excel接受1.)和2.),但是在所有樞軸單元格中僅輸出“ 0”。 以下是在數據透視表中僅顯示“ 0”的公式之一。

 =--OR(AND(HOUR>=8,'AM/PM'="AM",HOUR<>12), AND(OR(HOUR<=4,HOUR=12),'AM/PM'="PM"))

字段值設置沒有區別,並且使用1.)或2.)創建的新字段無法過濾為“ 1”或“ 0”,因此我猜字段計算一定有問題。有人知道我需要進行哪些更改才能使其工作嗎?數據透視表中的公式是否有適用於公式1.)和2.)的特殊規則才能使它們起作用?

謝謝你的幫助

我認為限制不是您,而是Excel。

請參閱此處,以了解可能的情況以及此問題

我嘗試了您的代碼,但實際上我發現它不起作用。 即使使用簡單的if代碼,它似乎也不起作用。 我認為它被明確稱為計算字段,因為您只能計算“總和/總計/計數等”列中的字段。

看一下MS,這個功能是相當有限的。 我會嘗試另一種解決方法來實現您的目標。

微軟

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM