Entonces, tengo una lista de pacientes. Y luego tengo una lista de pedidos de venta que corresponden a las visitas clínicas que necesitaban recibir. Estoy queriendo ver quién fue visto y quién no.
Entonces, en la hoja 1 tengo una lista de pacientes y sus números de identificación (la identificación del paciente es única): identificación del paciente, nombre del paciente
Luego, en la hoja 2 tengo una lista de pedidos de ventas (el ID del pedido de ventas es único, el ID del paciente no lo es): ID del paciente, ID del pedido de ventas, Fecha del pedido de ventas
Lo que quiero hacer es que Excel mire los pedidos de ventas en la hoja 2, encuentre dónde coincide la ID del paciente y luego muestre las fechas en secuencia.
Entonces, la Hoja 1 se vería así: ID del paciente, Nombre del paciente, Fecha del pedido de ventas 1, fecha del pedido de ventas 2, nulo (cuando no hay más coincidencias).
He leído todo lo que puedo encontrar en BUSCARV e ÍNDICE/COINCIDIR y parece que no puedo encontrar una función que funcione cuando hay varias coincidencias en la segunda hoja (la identificación del paciente sería la misma una y otra vez para cada pedido de ventas en la hoja 2).
Por favor ayuda.
Respuesta1
Aquí hay una solución que no requiere columnas auxiliares ni ordenar ninguna de las tablas. Simplemente utiliza una fórmula matricial relativamente simple.
Configure las dos hojas de trabajo como se muestra a continuación, con la segunda hoja llamada Sheet2
:
Introduzca ( Ctrl+ Shift+ Enter) la siguiente fórmula en la celda C3
de la primera hoja y copie y pegue/rellénela en C3:G7
:
{=IFERROR(SMALL(IFERROR(1/(1/((Sheet2!$A$2:$A$20=$A3)*(Sheet2!$C$2:$C$20))),""),C$2),"")}
Tenga en cuenta que si se llena la última celda de Fecha de la tabla Pacientes en la Hoja 1, habrápuedeHabrá más fechas que no se muestran. En la hoja de trabajo de ejemplo, agregué una fórmula en la columna a la derecha de la tabla para advertir si este es el caso:
Esa fórmula, matriz ingresada H3
y copiada, pegada/rellenada H3:H7
, es:
{=IF(ISERROR(SMALL(IFERROR(1/(1/((Sheet2!$A$2:$A$20=$A3)*(Sheet2!$C$2:$C$20))),""),G$2+1)),"","more")}
Respuesta2
Esto se puede solucionar contando los pedidos por cliente. Hay muchas variaciones sobre cómo puedes resolver esto, pero aquí tienes una.
Paso 1:
Ordene su tabla de pedidos primero con los pedidos más nuevos.
Paso 2:
Agregue una columna al final de sus pedidos de ventas con una fórmula que cuente el número de clientes. En la nueva columna, segunda fila, escribe la fórmula =Countif(B$2:B2,B2)
.
Copia la fórmula.
B
es la columna donde se encuentran los números de clientes.
Paso 3:
Agregue una columna con una clave única para identificar el número de cliente y el recuento de pedidos. En la segunda columna nueva, segunda fila escriba la fórmula.=B2&" "&X2
B
es el número de cliente y X
es el recuento de pedidos que realizó en el paso 2.
Etapa 4:
En su tabla de pacientes, agregue una columna que coincida con el índice del ID del pedido más nuevo, el segundo pedido más nuevo, etc. para devolver la fecha. Utilice un IFERROR()
para devolver un espacio en blanco si no hay coincidencia y utilice referencias absolutas para que las fórmulas se puedan copiar fácilmente:
(Intenté traducir la fórmula de mi Excel noruego)
=IFERROR(INDEX('Order list'!$C:$C,MATCH('Patient list'!$A2&" "&'Patient list'!B$1,'Order list'!$Y:$Y,0)),"")
donde C
está la columna con fechas y Y
es donde está la clave del paso 3.
Espero que esto pueda orientarlo en el camino correcto para encontrar una solución personalizada para sus mesas. Probablemente puedas automatizar las fórmulas en la tabla de pedidos, etc.
Pedidos:
Pacientes: