Duda con Lookup

Hola comunidad,

Escribo este post para ver si me podeis ayudar con una duda Lookup, que esto loco no doy con la solucion. Muchas gracias de antemano.

Tengo una hoja con los siguientes columnas de datos de clientes

  • Cliente
  • Nombre Cliente
  • Descuento
  • Telefono
  • Email
  • Direccion

Sobre esta hoja de clientes, tengo varios registros, en concreto 50 registros de clientes.

Desde otra hoja de pedidos, estoy haciendo un LookUp a la hoja de cliente para obtener datos del cliente en función del campo cliente que tenga seleccionado, en concreto para obtener el descuento. El caso es que, independientemente cliente al que este asignado el pedido, cuando busco los datos del cliente, siempre me devuelve datos del primer cliente

Por explicarlo un poco mejor, poniendo como ejemplo esta tabla:

Cliente Nombre Cliente Descuento Telefono Email Direccion
(Ruta A) Paco Paco 20 1111111 1@mail.es Direccion1
(Ruta A) Juan Juan 10 22222 2@mail.es Direccion2
(Ruta B) Pepe Pepe 30 3333 3@mail.es Direccion3

En el campo descuento, tengo la siguiente formula: LOOKUP([CLIENTE], “CLIENTES”, “Cliente”, “DESCUENTO”) y, supongamos que el cliente seleccionado es (Ruta B) Pepe, el resultado esperado seria 30, sin embargo me trae 20, como si el registro “(Ruta A) Paco” coincidiese.

Destacar que el campo cliente en la hoja Pedidos es un tipo ENUM.

Si sustituyo la referencia a [CLIENTE] por esto

LOOKUP(“(Ruta B) Pepe”, “CLIENTES”, “Cliente”, “DESCUENTO”), si que me trae el dato bien.

¿Que estoy haciendo mal? No lo entiendo.

Muchas gracias por vuestra ayuda.

Lo correcto es:

LOOKUP([_ThisRow].[CLIENTE], “CLIENTES”, “Cliente”, “DESCUENTO”)

Lo más eficiente es utilizar las Dereference Expressions en lugar de LOOKUP().

1 Like

Gracias Joseph_Seddik, Su uso la Dreference me trae el dato exacto para el descuesto de ese cliente o me crea un listado con todos los valores de descuento disponibles?

Luego pruebo por la tarde de todos modos.

Gracias por tu sugerencia!!

2 Likes

Es para recuperar el descuento de un cliente en particular.

1 Like

Joseph, muchas gracias por tus respuestas, metiendo el _ThisRow ha funcionado sin problema.

El Dreference no lo puedo usar porque el Descuento no es clave en la tabla , la clave en es el nombre de cliente, aunque he visto el video del enlace que compartes y he visto la forma de como hacerlo.

Muy valiosa tu respuesta!!! Muchas gracias!!!

Jorge

3 Likes