Necesito Macro para obtener valores que se repiten siempre

Solo consultas sobre macros y código VBA Excel.
Reglas del Foro 1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!

Necesito Macro para obtener valores que se repiten siempre

Notapor Gustavo1985 » 11 Oct 2018 13:45

Buenas tardes, tengo un excel con tres columnas A, B, C y necesito obtener en la columna D los valores que se hallan repetido tanto en las tres columnas anteriores, es decir que se hallar repetido tanto en A, como en B como en C, no me valdría si sólo se ha repetido en dos columnas, necesito los valores que se repitan las tres columnas. un saludo y muchas gracias de antemano
Gustavo1985
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 5
Registrado: 11 Oct 2018 12:46

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Lola F » 11 Oct 2018 14:00

Te dejo una fórmula por si te sirve

=SI(A1=B1;SI(A1=C1;A1;"No coincide");"Sin coincidencia")

Si son iguales te devolverá el valor de la columna A que da igual puesto que será el mismo que el de B y C.

Saludos.
Lola F
Miembro Nuevo
Miembro Nuevo
 
Mensajes: 4
Registrado: 03 Oct 2018 16:24

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Gustavo1985 » 11 Oct 2018 14:23

muchas gracias, pero el problema es que los valores en cada columna no están ordenados y no hay correlación entre filas, sería buscar un valor que se repita en cualquier fila de A, también en cualquier fila de B y en cualquier fila de C, si se cumple los tres requisitos se mostraría el valor en D.

Muchas gracias por la atención
Gustavo1985
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 5
Registrado: 11 Oct 2018 12:46

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Cacho R » 11 Oct 2018 14:53

.
Por favor, sube al Foro un archivo de Excel que contenga una decena de filas con datos y -además- el resultado que esperas obtener a partir de ellos, ¿Ok?

Saludos, Cacho R.
.
Avatar de Usuario
Cacho R
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 10323
Registrado: 23 Jun 2011 17:15
Ubicación: Buenos Aires

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Gustavo1985 » 11 Oct 2018 22:40

paso un ejemplo del tipo de filtrado que busco, en el ejemplo de todos los valores de las columnas el único que se repite en las tres es el de "1985"

Un saludo y muchas gracias por la ayuda
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Gustavo1985
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 5
Registrado: 11 Oct 2018 12:46

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Cacho R » 12 Oct 2018 02:16

.
¡Ahora se entiende todo!... Puedes intentar con:

Código: Seleccionar todo
Sub encontrar_Repetidos()
Dim Dic, Mat, Q&, i&, Tmp, j%

Set Dic = CreateObject("Scripting.Dictionary")
Mat = [a1].CurrentRegion.Resize(, 3): Q = UBound(Mat)
For j = 1 To 3
  For i = 1 To Q
    If Mat(i, j) <> "" Then
      If Dic.Exists(Mat(i, j)) Then Tmp = Dic(Mat(i, j)) Else Tmp = Array(0, 0, 0)
      Tmp(j - 1) = 1
      Dic(Mat(i, j)) = Tmp
    End If
  Next
Next

Mat = Dic.keys: Q = UBound(Mat)
For i = Q To 0 Step -1
  If Application.Sum(Dic(Mat(i))) < 3 Then Dic.Remove Mat(i)
Next

Range("d1", Cells(Rows.Count, "d").End(xlUp)).Offset(1).ClearContents
If Dic.Count > 0 Then [d2].Resize(Dic.Count) = Application.Transpose(Dic.keys)
End Sub

Saludos, Cacho R.
.
Avatar de Usuario
Cacho R
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 10323
Registrado: 23 Jun 2011 17:15
Ubicación: Buenos Aires

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Gustavo1985 » 12 Oct 2018 20:03

Mil gracias Carlos R, el código de la macro es genial y me ha funcionado perfectamente.

Muchas gracias y eternamente en deuda.
Gustavo1985
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 5
Registrado: 11 Oct 2018 12:46

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Antoni » 13 Oct 2018 06:22

Día lluvioso y aburrido. Otra visión del tema.

Código: Seleccionar todo
Sub BuscarRepetidos()
Dim celda As Range, celda1 As Range, celda2 As Range, celda3 As Range
Application.ScreenUpdating = False
Columns("D").Clear
For Each celda In Range("A2:C" & Range("A" & Rows.Count).End(xlUp).Row)
   Set celda1 = Columns("D").Find(celda, , , xlWhole)
   If celda1 Is Nothing Then
      Select Case celda.Column
         Case 1
            Set celda2 = Columns("B").Find(celda, , , xlWhole)
            Set celda3 = Columns("C").Find(celda, , , xlWhole)
         Case 2
            Set celda2 = Columns("A").Find(celda, , , xlWhole)
            Set celda3 = Columns("C").Find(celda, , , xlWhole)
         Case 3
            Set celda2 = Columns("A").Find(celda, , , xlWhole)
            Set celda3 = Columns("B").Find(celda, , , xlWhole)
      End Select
      If Not celda2 Is Nothing And Not celda3 Is Nothing Then
         fila = fila + 1
         Range("D" & fila) = celda
      End If
   End If
Next
If fila > 0 Then Columns("D").Sort Key1:=[D1]
End Sub
Avatar de Usuario
Antoni
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 5583
Registrado: 22 Dic 2009 04:58
Ubicación: GALICIA (ESPAÑA)

Re: Necesito Macro para obtener valores que se repiten siemp

Notapor Gustavo1985 » 13 Oct 2018 16:27

Antoni, muchisimas gracias !!!

perfecto todo!!!
Gustavo1985
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 5
Registrado: 11 Oct 2018 12:46


Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados