回答
您可以使用COUNTIFS函數來執行此操作。
假設不包括頭的數據範圍A2:B8
,那你就需要在C2單元格,輸入第一個公式是:
=IF(COUNTIFS(A$2:A2,B2,B$2:B2,A2)>0,"error","")
這個公式將被複制到最後的數據行。
COUNTIFS
統計一組條件在多個範圍內滿足的次數。如果在範圍1中滿足標準1並且在範圍2 AND等中滿足標準2,那麼將總數加1到COUNTIFS
。
在這種情況下,我們使用COUNTIFS
來檢查某個person2是否在Person1範圍內以及相應的person1是否在Person2範圍內。
由於您不希望第一次出現person1/person2對被計爲「錯誤」,因此COUNTIFS
會應用於一個擴展範圍,該範圍將增大以包含已選中但未包含任何其他對在列表中進一步排列。
例如,在單元格C2中的第一個公式中,COUNTIFS
僅應用於範圍A2:B2
,在單元格C3中的第二個公式中它應用於A2:B3
,依此類推。
換句話說,我們正在查看所有先前的對,看看當前對是否是這些對中的任何一個的倒數。
如果公式找到一個倒數對,它將由COUNTIFS
值> 0表示,則返回「錯誤」。
剛也將返回「錯誤」如果當前行包含以前遇到的倒數對公式。因此,您可以得到以下內容:b->c ""
... c->b "error"
... b->c "error"
。相反,如果您希望只將最初遇到的一對的倒數視爲「錯誤」,則需要更復雜的公式。
=IF(COUNTIFS(A$2:A2,B2,B$2:B2,A2)>0,IF(COUNTIFS(A$2:A2,B2,B$2:B2,A2,C$2:C2,"error")>0,"","error"),"")
該修訂公式檢查當前行中該對的倒數是否先前遇到並標記爲「錯誤」。如果有,那麼當前對未被標記爲「錯誤」。
我認爲當你將另一個b-> c對放在列表的最後時,它不起作用。 –
它會爲該對返回一個錯誤,因爲它是先前遇到的c-> b對的倒數。我想這是一個問題,這是@菲利普希望的結果。 – chuff
IMO它不應該被標記爲錯誤,因爲在第5行沒關係。但是你是對的,@飛利浦必須說出他真正想要的。 –
這是可以做到使用內置在函數中 - 我將它分成幾列(理解更清晰),但它可以合併成一個大複雜的公式。
在列d我檢查,如果從乙列值在列A
=MATCH(B3;$A$2:A2;0)
在B列我做相同的反向出現在上面的行。
=MATCH(A5;$B$4:B4;0)
如果值沒有出現MATCH返回錯誤#...,所以在列G和HI改變這種成0
=IF(ISERROR(D5);0;D5)
在列季檢查,如果這兩個位置平等,如果他們不是零。
=AND(G5>0;H5>0;G5=H5)
如果在列J爲真,那麼我打印「錯誤」,在L列
我希望這會幫助你。
事實上,如果字母「d」在B6中,這將不起作用。原因是MATCH()函數尋找第一次出現 - 這是該解決方案的弱點。 –
我發現我以前的帖子就不會在所有情況下,例如工作當我把「d」放入B6時。
所以我提出了另一個基於值連接的解決方案。想法是我連接列A和B中的值(列D = =CONCATENATE(A4;B4)
)。我在列E連接列B和A(=CONCATENATE(B4;A4)
)。
而且我在列D的上排(=IF(ISERROR(MATCH(E5;$D4:D$4;0));0;MATCH(E5;$D4:D$4;0))
)中尋找E列的位置。
而且我必須對重複出現的「良好」關係進行另一種控制(不會在第11行失敗)。所以列G = =IF(F5>0;INDEX($F4:F$4;F5);0)
。
在列I有一個最終evalutation =IF(AND(F4>0;G4=0);"error";"")
- 1. 檢查Excel 2003中的數據驗證
- 2. 從Excel中檢索varbinary數據爲Excel數據表
- 3. 如何檢查vba excel中的匹配數據
- 4. Excel宏:使用excel VBA檢查數據和着色
- 5. Excel質量數檢查?
- 6. 檢查mongo數據庫中的數據
- 7. 從數據庫表的一列中檢索到excel的數據
- 8. 使用XSLT從Excel中檢索數據
- 9. 在Excel中檢索數據時出錯
- 10. 從URL中檢索數據[Excel VBA]
- 11. 從WinForms Excel中檢索數據
- 12. 數據檢查
- 13. 檢查數據
- 14. 使用Excel中的宏VBA從Oracle表檢索數據到Excel
- 15. excel 2010和2013中的數據模型//數據檢索
- 16. Autohotkey - 從Excel中將數據從Excel中檢索到列表框
- 17. 檢查數組索引中的數據
- 18. Excel VBA檢查數據的自動篩選
- 19. 用於檢查數據一致性的Excel字符串處理
- 20. 檢查數據從Excel文件到網頁的腳本
- 21. 從Excel 2007中查詢oracle數據庫
- 22. 從Excel中查找和提取數據
- 23. Excel中 - 在另一片查找數據
- 24. 在Excel中查找Access數據庫
- 25. 檢查重複的Excel VBA
- 26. Excel的檢查由逗號
- 27. 檢查Excel行的列
- 28. 如何查看excel中flex數據的數據?
- 29. 檢查數據庫
- 30. 檢查$ _ POST數據
resiprok =倒數? – barrowc
是創建一個Visual Basic函數的一個選項嗎? – MikeD
使用循環VBA ... – matzone