16/11/2013, 10:30
|
| | Fecha de Ingreso: junio-2013
Mensajes: 1
Antigüedad: 10 años, 10 meses Puntos: 0 | |
Respuesta: Comprobar si en un rango de celdas hay coincidencia Cita:
Iniciado por mrocf Hola! El_LoBooo (y KATHYU).
a) Haz click derecho en la solapa de la hoja que contiene la información y selecciona: Ver código
b) En la ventana que se te abrirá copia y pega lo siguiente: Código PHP: Sub Diferenciar() Rem ------------------ Rem By Cacho Rodríguez Rem ------------------ Dim Vec1, myDic Dim Q&, i&, j&, iniTime! iniTime = Timer Vec1 = Range([a1], Cells(Rows.Count, "a").End(xlUp)) Q = UBound(Vec1) Set myDic = CreateObject("Scripting.Dictionary") i = 1 While i <= Q If myDic.Exists(Vec1(i, 1)) Then j = 1 + myDic(Vec1(i, 1)) myDic.Remove (Vec1(i, 1)) myDic.Add Vec1(i, 1), j Vec1(i, 1) = Vec1(i, 1) & j Else myDic.Add Vec1(i, 1), 1 End If i = 1 + i Wend [f1].Resize(Q) = Vec1 MsgBox "Proceso terminado en: " & Format(Timer - iniTime, "0.000 seg.") Vec1 = Empty myDic = Empty End Sub c) Cierra todas las ventanas del ambiente Visual Basic for Application (VBA) en el que te encuentras y retorna al Excel.
d) Ejecuta la macro que recién acabas de incorporar: Diferenciar
e) En la suposición que tus datos se encuentrasen ubicados desde la celda A1 y hacia abajo, deberías obtener la solución en cuestión de décimas de segundos.
¿Te puede servir la idea?...
Saludos, Cacho R. hola mrocf!! tengo un poblema con una macro y no se como poder hacer la pregunta... y que me pudieras ayudar... sigo tus respuestas en otras preguntas que te hace y son geniales... espero tu respuesta. Gracias |