tipos - ¿Cómo se obtiene el índice de la columna de una tabla utilizando una referencia estructurada en Excel?
tipos de tablas en excel (6)
Puede usar: =COLUMN(MyTable[
, donde *
]) - COLUMN(MyTable[A]) + 1*
es la columna cuyo índice desea.
Tengo una mesa con 3 columnas Quiero escribir una fórmula que, dada una referencia estructurada, devuelva el índice de la columna. Esto me ayudará a escribir fórmulas de VLookup usando la referencia estructurada.
Entonces, por ejemplo, para la tabla MyTable
con las columnas A
, B
, C
me gustaría poder escribir:
=GetIndex(MyTable[C])
y haz que regrese 3.
En este momento solo me aseguro de que el rango de la tabla comience en la primera columna de la hoja y escriba
=Column(MyTable[C])
pero quiero algo más sólido.
Quieres decir:
Dim r As Range
MyLetter ="AA"
Set r = Range(MyLetter & "1")
MyIndex= r.Column
Editar comentario
Function GetRelativeColumn(Letter, RangeName)
Dim r As Range
Dim ColStart, ColRequired, ColTemp
Set r = Range(RangeName)
ColStart = r.Column
ColRequired = Range(Letter & "1").Column
ColTemp = ColRequired - ColStart + 1
If ColTemp < 1 Or ColTemp > r.Columns.Count Then
MsgBox "Ooutside range"
Else
GetRelativeColumn = ColTemp
End If
End Function
= ligera modificación a las respuestas de eJames: = COLUMN (MyTable [*]) - MIN (COLUMN (MyTable)) + 1, donde * es la columna de la que desea el índice.
Otra solución a la pregunta que hizo (o algo parecido) es usar algo como =MATCH("C",MyTable[#Headers],0)
, que devolverá 3 en el ejemplo que publicó.
Sin embargo, si usa INDEX en lugar de VLOOKUP, no necesitaría hacer esto. Por ejemplo, si quiere encontrar el valor de C en la fila (suponiendo que no hay más de uno) donde A es igual a 2, podría usar una fórmula como =INDEX(MyTable[C],MATCH(2,MyTable[A],0))
, que está muy bien documentado.
Una fórmula adecuada basada en su ejemplo sería
=COLUMN(MyTable[C])-COLUMN(MyTable)+1
La primera parte de la COLUMN(MyTable[C])
forumla COLUMN(MyTable[C])
devolverá el número de columna de la columna referenciada.
La segunda parte de la fórmula COLUMN (MyTable) siempre devolverá el número de columna de la primera columna de la tabla.