-1

列と行のヘッダーと対応する値を含む Excel のテーブルがあります。テーブル内の列と行のヘッダー名/インデックスの両方を Excel で検索するにはどうすればよいですか?

Mathematica では、同等の関数は Position[listoflist,value] です。

編集:


VBA で簡単な関数を作成しましたが、これは完璧とは言えません。

Function MathematicaPosition(lookvalue As Range, TableRange As Range, RowOrColumn As Boolean) As Integer
Dim r As Integer
Dim c As Integer
Dim tempindex As Integer
Dim i As Integer, j As Integer

tempindex = 0
r = TableRange.Rows.Count
c = TableRange.Columns.Count
For i = 1 To r
    For j = 1 To c 
        If lookvalue.Value = TableRange.Cells(i, j).Value Then
            tempindex = IIf(RowOrColumn, i, j)
        End If
    Next j
Next i
MathematicaPosition = tempindex
End Function
4

3 に答える 3

0
Function MathematicaPosition(lookvalue As Range, TableRange As Range, RowOrColumn As Boolean) As Integer
Dim r As Integer
Dim c As Integer
Dim tempindex As Integer
Dim i As Integer, j As Integer

tempindex = 0
r = TableRange.Rows.Count
c = TableRange.Columns.Count
For i = 1 To r
    For j = 1 To c 
        If lookvalue.Value = TableRange.Cells(i, j).Value Then
            tempindex = IIf(RowOrColumn, i, j)
        End If
    Next j
Next i
MathematicaPosition = tempindex
End Function
于 2014-10-03T14:22:22.283 に答える
0

ここのダブルルックアップセクションを参照してください。

http://www.cpearson.com/Excel/TablesAndLookups.aspx

于 2013-10-01T21:27:03.673 に答える
0

MrExcelから直接持ち上げた

データ配列が A1:D5 にあると仮定します。

G2:=COUNTIF(B2:D5,G1)

G4 では:=IF(ROWS($G$4:G4)>$G$2,"",INDEX($A$2:$A$5,INT(SMALL(IF($B$2:$D$5=$G$1,(ROW($B$2:$D$5)-ROW($B$2)+1)*10^5+COLUMN($B$2:$D$5)-COLUMN($B$2)+1),ROWS($G$4:G4))/10^5)))

H4:=IF(ROWS($G$4:G4)>$G$2,"",INDEX($B$1:$D$1,MOD(SMALL(IF($B$2:$D$5=$G$1,(ROW($B$2:$D$5)-ROW($B$2)+1)*10^5+COLUMN($B$2:$D$5)-COLUMN($B$2)+1),ROWS($G$4:G4)),10^5)))

後の2つはCtrl+ Shift+で入力Enterして下にコピーしました。

私は Mathematica について何も知らず、理解できませんreverse values(基本的に-1を掛けるか、列を切り替えるか)。

于 2013-10-01T22:12:01.323 に答える