Funciones en vba

Cordiales desde mexico.
Y espero que me puedas apoyar con este problema que tengo:
-Actualmente tengo una tabla en una hoja de excel, tiene datos de unidades (autos)y destinos, por lo que para encontrar los kilómetros a recorrer hacemos la intersección de que unidad es y a que destino va.
He estado usando la función "coincidir" para localizar el numero de columna o fila según el caso, y para encontrar la intersección de estas uso la función "indice". Con esto logro el objetivo de hallar los kms a recorrer de acuerdo al destino y unidad.
PERO: deseo hacerlo con un userform! Con 3 textbox, en donde a dos les ingrese el numero de unidad y al otro el destino y el tercero me muestre el resultado. Para ello quiero saber si es posible hacerlo, y se serlo que me muestres que código a usar para hacer funcionar estas funciones en VBA(coincidir e indice.

1 respuesta

Respuesta
2
Disculpas por la demora pero estuve buscando las funciones equivalentes para usar desde VBA y no lo encontré; si todavía te sirve te comento que podrías hacer algo parecido a esto
Dim fila As Long, columna As Long
Range("B1:Z1").Select
Selection.Find(What:=TextBox1.Text, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Select
columna = ActiveCell.Column
'define el rango vertical (el del coincidir)
Range("A2:A100").Select
Selection.Find(What:=TextBox2.Text, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Select
fila = ActiveCell.Row
Textbox3.Text = ActiveSheet.Cells(fila, columna).Value
Falta ver donde colocarlo y donde hacer todos los chequeos de control de error (que pasa si no encuentra información)
No te preocupes por la demora.
La verdad es que nadie me podía decir algo o como hacerle a mi problema.
Tu código me sirvió mucho, le colocare si es que me sale la trampa para errores. Je je
Gracias amigo me fue de muchissma ayuda.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas