Saltar al contenido

Comparar dos listas de dos hojas con una tercera en un mismo libro...


HERZ07

Recommended Posts

publicado

Buen dia:

Necesito comparar dos listas (LISTA 1 y LISTA 2), con una tercera (MADRE), pero solo seria una columna que tienen en comun,y que en la lista MADRE se coloree la celda de esta columna de los datos de la LISTA 1 y 2 presentes en la MADRE.

Espero darme a entender

Gracias

publicado

Hola Herz07, bienvenido al Foro

Pues anímate y sube el archivo con tus tres hojas de ejemplo (no imagen), según indican las Normas del Foro.

Un saludo

publicado

Buenas.

HERZ07: Haz una copia del libro y deja algunos datos de muestra. No es necesario todo el libro. Actualmente pesa 5Mb y no se puede bajar o abrir en Skydrive.

publicado

Herz07

Revisa el adjunto y cometas si es lo que necesitas.

Según entendí, la idea es averiguar que registro esta en la tres hojas.

De acuerdo a esto realice una función mezclando la función Y con BUSCARV, la puedes ver al final de la hoja madre.

Esta formula la meti a un formato condicional.

Saludos Cordiales

Pedro

Sitios conectados MUESTRA_petercien.xls

publicado

gracias, ya lo revise, pero no hace lo que requiero,por lo que entendi esta formula me pone V en la MADRE los que estan repetidos en las dos listas 1 y 2... los que sólo aparecen una vez se pone como F.

Lo que necesito es que en la MADRE columna A se resalte en algun color las claves de las escuelas que aparecen en la lista 1 y 2, ya que estas dos listas son las escuelas conectadas a la red y la MADRE son todas las escuelas conectadas y no conectadas. Hay que descartar conectadas para conectar las que faltan.

Podriamos ocupar ese campo de VyF, pero necesito que el resultado sea V las que estan conectadas y F las que no estan conectadas, no las que se repitan en ambas listas...

Hijole, espero hacerme entender, que llevo un par de dias buscando y solo encuentro la mitad de lo que requiero.

Este link hace algo que me gustaria hacer pero aqui maneja dosl istas en la misma hoja

Cómo comparar dos listas en Excel

Se podra con mi archivo ? Que se resalte en la MADRE columna A los que estan en la lista 1y2 columna A.

Gracias.

publicado

Amigo HERZ07, creo que es esto lo que necesitas,

he creado 2 rangos diámicos, que hacen referencia a las filas con datos de la columna A de cada hoja (Lista 1_ y Lista 2_)

tblLista01 = DESREF('Lista 1_'!$A$1;1;0;CONTARA('Lista 1_'!$A:$A)-1;1)

tblLista02 = DESREF('Lista 2_'!$A$1;1;0;CONTARA('Lista 2_'!$A:$A)-1;1)

esto es simplemente por comodidad y mejor entendimiento de la formula, luego agregue un formato condicional a la columna A de la hoja Madre_ donde busca el valor de la celda en los 2 rangos dinámicos, si lo consigue en alguno coloca la celda de color verde, espero que te sea de ayuda

Sitios conectados MUESTRA_SM.rar

publicado

Si es lo que necesito, me puedes guiar por pasos para poder copiar y usar ese rango dinamico en la BD original y ver si me funciona, ya he buscado y no encuentro como donde poner el rango, ya lo intente INICIO/formato condicional, pero nada. GRACIAS

publicado

Hola, a logre que se resaltaran.pero tengo un problema, es demasiado grande el archivo y al filtrar se traba, habara alguna macro u otra formula que me saque los DATOS NO REPETIDOS EN LA MADRE en otra hoja aparte, porque apenas le doy en la flecha de menu y se traba, ya intente exportarlo a ACCESS pero me marca error en el "asistonto".

publicado

hola HERZ07, no entiendo cuando dices que se traba, lo que se aplico fue un formato condicional, no creo que se trabe el excel por eso, debe ser otro problema, puedes intentar subir el archivo completo (comprimido) para verificar, suerte

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 109 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      188
    • Comentarios
      98
    • Revisiones
      29

    Más información sobre "Cambios en el Control Horario"
    Última descarga
    Por pegones1

    4    1

  • Crear macros Excel

  • Mensajes

    • Hola, veo que tienes 365, así que esta forma funcionará   Almacen.xlsx
    • Buenos días  @LeandroA espero estes bien Tengo un caso idéntico al planteado en la siguiente pregunta: Sin embargo, a diferencia de quien planteo originalmente la pregunta al correr el código no obtengo ningún resultado podrían ayudarme a resolver este inconveniente y que al hacer click en el Botón Guardar (CommandButton3) del Formulario RCS (frmrcs) el archivo pdf quede configurado con orientación vertical, márgenes superior, inferior, derecho e izquierdo = 1 y en página tamaño carta. Si acaso influye uso Microsoft Excel LTSC MSO (versión 2209 Compilación16.0.1.15629.20200) de 64 bits Mucho le sabre agradecer la ayuda que me pueda dar  RCS PRUEBA - copia.xlsm
    • @JSDJSDCon gusto mi estimado Para la opción 1: Sub Surtirhastadondealcanse() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets(1) Dim filaInicio As Integer: filaInicio = 4 Dim filaFin As Integer: filaFin = 7 Dim colInventario As Integer: colInventario = 2 Dim colSolicitudesInicio As Integer: colSolicitudesInicio = 4 ' Columna C Dim colResultadoInicio As Integer: colResultadoInicio = 9 ' Columna I Dim colTotalSurtido As Integer: colTotalSurtido = 12 ' Columna L Dim colFinalInventario As Integer: colFinalInventario = 13 ' Columna M Dim numClientes As Integer: numClientes = 3 Dim fila As Integer, i As Integer For fila = filaInicio To filaFin Dim inventario As Double inventario = Val(ws.Cells(fila, colInventario).Value) Dim solicitudes(1 To 3) As Double Dim surtido(1 To 3) As Variant Dim totalSurtido As Double: totalSurtido = 0 ' Leer solicitudes For i = 1 To numClientes If IsNumeric(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Then solicitudes(i) = CDbl(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Else solicitudes(i) = 0 End If surtido(i) = "POR FALTA STOCK" Next i ' Surtir de acuerdo al inventario disponible For i = 1 To numClientes If solicitudes(i) > 0 Then If inventario >= solicitudes(i) Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) ElseIf inventario > 0 Then surtido(i) = inventario totalSurtido = totalSurtido + inventario inventario = 0 Else surtido(i) = "POR FALTA STOCK" End If End If Next i ' Escribir resultados en las columnas correspondientes para cada cliente For i = 1 To numClientes With ws.Cells(fila, colResultadoInicio + i - 1) If surtido(i) = "POR FALTA STOCK" Then .Value = surtido(i) .Font.Color = vbRed Else .Value = surtido(i) .Font.Color = vbBlack End If End With Next i ' Escribir total surtido y existencia final ws.Cells(fila, colTotalSurtido).Value = totalSurtido ws.Cells(fila, colFinalInventario).Value = inventario Next fila MsgBox "Resultado surtido cargado con éxito...", vbInformation End Sub Para la opción 2:   Sub surtirenpartesiguales() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets(1) Dim filaInicio As Integer: filaInicio = 13 Dim filaFin As Integer: filaFin = 16 Dim colInventario As Integer: colInventario = 2 Dim colSolicitudesInicio As Integer: colSolicitudesInicio = 4 ' Columna C Dim colResultadoInicio As Integer: colResultadoInicio = 9 ' Columna I Dim colTotalSurtido As Integer: colTotalSurtido = 12 ' Columna L Dim colFinalInventario As Integer: colFinalInventario = 13 ' Columna M Dim numClientes As Integer: numClientes = 3 Dim fila As Integer, i As Integer For fila = filaInicio To filaFin Dim inventario As Double inventario = Val(ws.Cells(fila, colInventario).Value) Dim solicitudes(1 To 3) As Double Dim surtido(1 To 3) As Variant Dim totalSurtido As Double: totalSurtido = 0 Dim totalPedido As Double: totalPedido = 0 ' Leer solicitudes For i = 1 To numClientes If IsNumeric(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Then solicitudes(i) = CDbl(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) totalPedido = totalPedido + solicitudes(i) Else solicitudes(i) = 0 End If surtido(i) = 0 Next i ' Si hay suficiente inventario, surtir lo que el cliente pide If inventario >= totalPedido Then For i = 1 To numClientes If solicitudes(i) > 0 And inventario >= solicitudes(i) Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) End If Next i Else ' Reparto base igualitario Dim baseSurtido As Long baseSurtido = Int(inventario / numClientes) For i = 1 To numClientes If solicitudes(i) > 0 Then If solicitudes(i) <= baseSurtido Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) Else surtido(i) = baseSurtido inventario = inventario - baseSurtido totalSurtido = totalSurtido + baseSurtido End If End If Next i ' Repartir sobrante restante uno por uno, respetando lo pedido Do While inventario > 0 For i = 1 To numClientes If surtido(i) < solicitudes(i) Then surtido(i) = surtido(i) + 1 totalSurtido = totalSurtido + 1 inventario = inventario - 1 If inventario = 0 Then Exit For End If Next i Loop End If ' Escribir resultados en las columnas correspondientes para cada cliente For i = 1 To numClientes With ws.Cells(fila, colResultadoInicio + i - 1) If surtido(i) = 0 Then .Value = "POR FALTA STOCK" .Font.Color = vbRed Else .Value = surtido(i) .Font.Color = vbBlack End If End With Next i ' Escribir total surtido y existencia final ws.Cells(fila, colTotalSurtido).Value = totalSurtido ws.Cells(fila, colFinalInventario).Value = inventario Next fila MsgBox "Resultado surtido cargado con éxito...", vbInformation End Sub Saludos, Diego
    • Buenos dias.  Estoy trabajando en una hoja para poder llevar un control de un pequeño almacén.  Tengo un pedido con varias líneas y "lotes" y necesito sacar las ubicaciones que coincidan con la referencia y lote que pone en el pedido. El problema viene cuando tengo la misma referencia y mismo lote en ubicaciones diferentes y necesito sacar la información en columnas diferentes. No se si  me he explicado bien, pero creo que con el ejemplo adjunto se entiende mejor. Agradecería mucho si me pudieran ayudar  Libro1.xlsx
    • Exelente solución mil gracias 
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.