Saltar al contenido

reducir codigo para resaltar celdas de una hoja a otra con condicion


fredy122

Recommended Posts

como puedo mejorar este codigo byfejoal  para que realice la condicion de resaltar las celdas azules que estan cerca a la celda de borde a una distancia de 21 celdas anterior y porterior a la celda de borde

el codigo realiza ese proceso pero me gustaria que el codigo fuera un poco mas reducido y ademas tengo problema con esta linea del codigo sub color

Sub color()
Worksheets("hoja2").Range("b2:ac33").Interior.color = xlNone
Set ha = Worksheets("hoja2").Range("b2:ac33")
Set hn = Worksheets("hoja1").Range("a1:cy42")     'controlar rango
For i = 1 To hn.Cells.Count
    'si la columna es par se omite
    If hn.Cells(i).Column Mod 2 = 0 Then GoTo SALIDA
    numero = hn.Cells(i)
    cuenta = WorksheetFunction.CountIf(ha, numero)
    If cuenta > 0 Then
        For j = 1 To cuenta
            If j = 1 Then Set busca = ha.Find(numero)
            If j > 1 Then Set busca = ha.FindNext(busca)
            On Error Resume Next   'si no se encuentra busca se omite el error
            Celda = busca.Address
            If Worksheets("hoja2").Range(Celda).Interior.ColorIndex = xlNone Then
                Worksheets("hoja2").Range(Celda).Interior.ColorIndex = 6
            End If
        Next j
    End If
SALIDA:
Next i

End Sub
les agradezco la colaboracion si alguien me puede ayudar a resolverlo

 

BuscarHoja2.xlsm

Enlace a comentario
Compartir con otras webs

Archivado

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

  • 93 ¿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
      177
    • Comentarios
      90
    • Revisiones
      27

  • Crear macros Excel

  • Mensajes

    • No va a ser necesario distinguir el tipo de proceso entre 1 y 2. Revisa el adjunto a ver si es eso lo que quieres. Function MediaAttention(mImp As Range, _ q25 As Range, q50 As Range, _ Optional q75 As Range, _ Optional q100 As Range) As Double '-- Opción 1 If q75 Is Nothing And q100 Is Nothing Then MediaAttention = q25 / q50 Exit Function End If '-- Opción 2 MediaAttention = ((0.25 * (q25 - q50)) / mImp) + _ ((0.5 * (q50 - q75)) / mImp) + _ ((0.75 * (q75 - q100)) / mImp) + _ (q100 / mImp) End Function   Media Attention Formula 1.2.xlsb
    • Gracias tomarse el tiempo de leer por responder Maestro @Antoni Adjunto el archivo con la idea a la que deseo llegar, sigo atento. Mil gracias por el tiempo y la ayuda brindada   Media Attention Formula 1.2.xlsb
    • He analizado la UDF y entiendo perfectamente lo que hace, lo que no entiendo es lo que pretendes hacer. Mejor sube un ejemplo resuelto de  como debería funcionar la UDF con los nuevos parámetros solicitados. 
    • Gracias, ya lo conseguí solucionar
    • Hola a todos Primero que nada deseo agradecer el tiempo en leer este post, Muchas Gracias. Me acerco a ustedes para pedir su ayuda para lo siguiente: Tengo una UDF, la cual tiene dos escenarios: 1.- Si Tiempo Promedio y Duración del Video son diferentes de 0, hacer el calculo 2.- Si lo anterior es igual a 0, se realiza el otro calculo por cuartiles. El detalle es que son muchas celdas a seleccionar, lo cual creo puede ser engorroso, entonces, pensando en simplificar la función, me pregunte si fuera posible: a.- Colocar 1 al principio de la función y después solo seleccionar 2 celdas correspondientes (Rango continuo o discontinuo) b.- Colocar 2 al principio de la función y después seleccionar las 5 celdas correspondientes (Rango continuo o discontinuo) Espero me puedan ayudar y/o orientar al respecto, quedo atento para cualquier duda, de antemano les agradezco cualquier ayuda brindada. Mil Gracias!! Media Attention Formula 1.1.xlsb  
  • 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.