La consulta de Excel devuelve múltiples valores.
Insertar tabla de módulos
La función mlookup (a representa cadena, b representa rango, c representa longitud) representa cadena
Dim arr() p>
"Arr = b" define una matriz como el rango de origen de datos de la consulta.
Atenuarme siempre
Atenuar dic como objeto
set DIC = CreateObject(" scripting . diccionario ")
Para i = 1 a UBound(arr)
Si arr(i, 1) = a, entonces cuando el valor de la primera columna de la matriz es el mismo que el valor objetivo de búsqueda,
Si arr(i,1) = a y arr(i,c) lt; si el valor consultado ignora los valores nulos, se requiere una declaración "Entonces".
Dic. Add i, arr(i,c)' agrega el valor que la consulta necesita para devolver al elemento en el diccionario.
Terminará si...
A continuación,
Erase arr()' borra la matriz.
Dim vl(), va as string
' Vl = dic.items 'Convierte todos los elementos del diccionario en una matriz.
Set dic = Nada 'Borrar el diccionario.
Para i = 0, UBound(vl)' agrupa los valores de la matriz. Nota: los subíndices comienzan desde 0.
va = va amp"," ampvl(one)
Siguiente i
Si UBound(vl) = -1, entonces
Mlookup = "Ninguno" 'No mostrar registros coincidentes.
Otros
La transformación Mlookup = Join(vl, ","") consultará los resultados.
Borrar vl 'matriz vacía.
Terminará si...
Finalizar función
Utilice la función mlookup(), similar a BUSCARV(), pero no es necesario ingresar un 1, 0 aproximado o exacto.
Usage=mlookup(a1,b:c,2) no requiere ingresar 1,0 aproximado o exacto.