[英]How to return Excel row and column header values based on a known cell?
我在Excel中有一些表數據,並且已經使用MAX公式返回最大值。 現在,我需要編寫幾個公式,這些公式根據該最大值返回相交的行標題和列標題的值。
這是示例工作表中的表的外觀。
MaxValue = 106,547 RowValue = ?????
ColValue = ?????
ItemA ItemB ItemC ItemD ItemE ItemF
SiteA 784 3,357 - 77 8 54,789
SiteB 589 259 89 106,547 56 2,587
SiteC 635 678 - 9,963 - 26,993
SiteD 1,257 9 41 589 - 6,520
SiteE 87 3,688 476 46,719 7,899 369
該表中包含的最大值是106,547。 因此,我希望公式為RowValue結果返回ItemD ,為ColValue結果返回SiteB 。
通常,我會在VBA中做到這一點,但是這種特殊方法需要在Excel中進行。 我認為INDEX MATCH是正確的方法,因為我可以使用工作表中的以下公式來獲取正確的值(它們並沒有完全轉換為我上面發布的表,但是我還不能發布圖像,對不起) 。
RowValue = INDEX($B$4:$G$4,MATCH(C1,$B$6:$G$6,0))
ColValue = INDEX($A$5:$A$9,MATCH(C1,$E$5:$E$9,0))
我需要的是能夠找到這些值而無需對行信息進行硬編碼。
假設您的數據在A1:G6范圍內,其中A2:A6包含Site標頭,B1:G1包含Item標頭和編號在B2:G6范圍內,然后嘗試執行此操作
獲取網站標題:
在J2中
=INDEX(A2:A6,SUMPRODUCT((B2:G6=MAX(B2:G6))*(ROW(B2:B6)-ROW(B2)+1)))
要獲得Item標頭:
在K2中
=INDEX(B1:G1,SUMPRODUCT((B2:G6=MAX(B2:G6))*(COLUMN(B1:G1)-COLUMN(B1)+1)))
根據您的文件:
在F1中
=INDEX(A5:A9,SUMPRODUCT((B5:G9=C1)*(ROW(B5:B9)-ROW(B5)+1)))
在F2中
=INDEX(B4:G4,SUMPRODUCT((B5:G9=C1)*(COLUMN(B4:G4)-COLUMN(B4)+1)))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.