使用排除的行?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好,
我有兩列。在第一列(站點)中,旁邊有數字 1 或 2。在第二列中,有一些數值。
我創建了一個計算排名和百分位數的函數。首先,該函數在新列中計算排名和百分位數。然後函數選擇站點 1 中值為 1 的所有行並對其進行計數。然後,它選擇並排除站點列中值為 2 的所有行,然後計算另一列中的排名和百分位。所有這一切都在發揮作用。
當我想在選擇並排除「站點」列中值為 2 的行後計算排名和百分位數時,問題就出現了。它不會傳回任何錯誤,但該列中沒有值。我假設這與我的公式中的 except() 表達式有關。如果我從 F3 中刪除 if 語句,使其與 F 完全相同,我會得到與其旁邊的列相同的值,但如果我保持 F3 不變,則沒有值!
我缺什麼?抱歉,如果這非常明顯......
rp函數=功能( {排,測試} ,
//row --> 資料表中有多少行(裝置)?
//測試 - ?我們計算 RP 的目的是哪一個測試?
目前數據表( dt總結) ;
坳=柱子(測試) ;
新科= “RP” ||測試;
F =求值表達式( 100 * (上校軍階(坳) /表達式(排) )) ;
dt總結<<新專欄(新科,數位,公式(名稱表達式( F ) ) ) ;
坳=柱子(新科) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 1 ) ;
第1行=行數( dt總結<<取得選定的行()) ;
dt總結<<選擇地點( :地點== 2 ) ;
第2行=行數( dt總結<<取得選定的行()) ;
dt總結<<選擇地點( :地點== 2 ) ;
dt總結<<排除;
新科= “RP” ||測試|| “站點 1” ;
F1 =求值表達式( 100 * (上校軍階(如果(排除() , 。 ,坳) ) /表達式(第1行) )) ;
dt總結<<新專欄(新科,數位,公式(名稱表達式( F1 ) ) ) ;
坳=柱子(新科) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 2 ) ;
dt總結<<取消排除;
dt總結<<選擇地點( :地點== 1 ) ;
dt總結<<排除;
新科= “RP” ||測試|| “站點 2” ;
F2 =求值表達式( 100 * (上校軍階(如果(排除() , 。 ,坳) ) /表達式(第2行) )) ;
dt總結<<新專欄(新科,數位,公式(名稱表達式( F2 ) ) ) ;
坳=柱子(新科) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 1 ) ;
dt總結<<取消排除;
) ;
回覆:使用排除的行?嗨女士,
謝謝你回到我身旁。當我搜尋所有排除內容時我意識到了這一點。最初我認為我必須排除行,所以這就是我選擇它的原因。我更喜歡你的程式碼的簡單性,謝謝!
回覆:使用排除的行?在 If 語句中直接定位 Site 並避免完全排除行不是更直接嗎? 例如:
rp函數=功能({測試} ,
F =求值表達式( 100 * (上校軍階(表達式(柱子(測試))) /列號( :地點))) ;
dt總結<<新專欄( “RP” ||測試,數位,公式(名稱表達式( F ))) ;
F =求值表達式( 100 * (上校軍階(如果( :地點!= 1 , 。 ,表達式(柱子(測試)))) /蘇姆山口( :地點== 1 ))) ;
dt總結<<新專欄( “RP” ||測試|| “站點 1” ,數位,公式(名稱表達式( F ))) ;
F =求值表達式( 100 * (上校軍階(如果( :地點!= 2 , 。 ,表達式(柱子(測試)))) /蘇姆山口( :地點== 2 ))) ;
dt總結<<新專欄( “RP” ||測試|| “站點 2” ,數位,公式(名稱表達式( F ))) ;
) ;
回覆:使用排除的行?非常感謝吉姆。這是工作!我什至沒有想到要去看那個。我非常專注於它排除行,因為它對我來說是新的並且沒有看到明顯的!再次感謝。
回覆:使用排除的行?娜塔莉,
我想我找到了。
第二次分配“Col=Newcol”時,我實際上認為您不想將其分配給新列。您實際上想讓 col 指向 Rp Irgl 列。不適用於網站 1 的名為 Rp Irgl 的新欄位。您在公式中使用 col 的值,並且剛剛將其重新指派給網站 1 的 Rp Irgl。
我剛剛改變了
列=新列;
col<<刪除公式;
到
xcol=newcol;
xcol<<刪除公式;
第三次使用col=newcol;和 col<< 刪除公式;不必更改,因為您沒有使用公式中的 col 值建立任何新列。
回覆:使用排除的行?你好娜塔莉_
也許你可以在選擇之間使用 wait() 。
否則,您將使用原始表的子集並使用所需的計算更新原始表來節省時間。只需確保您不會覆蓋原始表中的資料即可。
榮恩
回覆:使用排除的行?嗨吉姆,
謝謝你回到我身旁。不幸的是,程式碼仍然無法運作
我注意到,在您傳送給我的程式碼中,您沒有在網站 2 選擇下新增排除(1)。我添加了它,但不幸的是它沒有起作用。我附上了一個螢幕顯示,向您展示我的數據表的樣子。前兩列 rp 是我想要的,但最後一列沒有任何值。
rp函數=功能( {排,測試} ,
//row --> 資料表中有多少行(裝置)?
//測試 - ?我們計算 RP 的目的是哪一個測試?
目前數據表( dt總結) ;
坳=柱子(測試) ;
新科= “RP” ||測試;
F =求值表達式( 100 * (上校軍階(坳) /表達式(排) )) ;
dt總結<<新專欄(新科,數位,公式(名稱表達式( F ) ) ) ;
坳=柱子(新科) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 1 ) ;
第1行=行數( dt總結<<取得選定的行()) ;
dt總結<<選擇地點( :地點== 2 ) ;
第2行=行數( dt總結<<取得選定的行()) ;
dt總結<<選擇地點( :地點== 2 ) ;
dt總結<<排除( 1 ) ;
新科= “RP” ||測試|| “站點 1” ;
F1 =求值表達式( 100 * (上校軍階(如果(排除() , 。 ,坳) )) /表達式(第1行) ) ;
dt總結<<新專欄(新科,數位,公式(名稱表達式( F1 ) ) ) ;
坳=柱子(新科) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 2 ) ;
dt總結<<排除( 0 ) ;
dt總結<<選擇地點( :地點== 1 ) ;
dt總結<<排除( 1 ) ;
新科= “RP” ||測試|| “站點 2” ;
F2 =求值表達式( 100 * (上校軍階(如果(排除() , 。 ,坳) )) /表達式(第2行) ) ;
dt總結<<新專欄(新科,數位,公式(名稱表達式( F2 ) ) ) ;
坳=柱子(新科) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 1 ) ;
dt總結<<排除( 1 ) ;
) ;

回覆:使用排除的行?娜塔莉,
我拿了你的程式碼,對它做了很小的改變;我將取消排除和排除更改為排除(0|1)。這確保了訊息的正確操作。排除和取消排除實際上是開關,而不是絕對訊息。
該代碼似乎有效:
rp函數=功能( {排,測試} ,
//row --> 資料表中有多少行(裝置)?
//測試 - ?我們計算 RP 的目的是哪一個測試?
目前數據表(dt總結) ;
坳=柱子( 測試 ) ;
新科= “RP” ||測試;
F =求值表達式( 100 * (上校軍階(上) /表達式(排) )) ;
dt總結<<新專欄(新列,數位,公式(名稱表達式( F ) ) ) ;
坳=柱子(新列) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 1 ) ;
第1行=行數(dt總結<<取得選定的行()) ;
dt總結<<選擇地點( :地點== 2 ) ;
第2行=行數(dt總結<<取得選定的行()) ;
dt總結<<選擇地點( :地點== 2 ) ;
dt總結<<排除;
新科= “RP” ||測試|| “站點 1” ;
F1 =求值表達式( 100 * (上校軍階(如果(排除() , 。 ,上)) /表達式(第 1 行))) ;
dt總結<<新專欄(新列,數位,公式(名稱表達式(F1)))) ;
坳=柱子(新列) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 2 ) ;
dt總結<<排除( 0 ) ;
dt總結<<選擇地點( :地點== 1 ) ;
dt總結<<排除( 1 ) ;
新科= “RP” ||測試|| “站點 2” ;
F2 =求值表達式( 100 * (上校軍階(如果(排除() , 。 ,上)) /表達式(第2行))) ;
dt總結<<新專欄(新列,數位,公式(名稱表達式(F2)))) ;
坳=柱子(新列) ;
坳<<刪除公式;
dt總結<<選擇地點( :地點== 1 ) ;
dt總結<<排除( 0 ) ;
) ;

回覆:使用排除的行?不確定這是否有幫助,但在舊版本的程式中,列公式對排除不敏感。
否則,最好是基於 << get rows where () 而不是基於選擇進行計算。
榮恩
回覆:使用排除的行?編輯:我的解釋中的 F3 實際上應該說 F2。