UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

No se puede subir archivos al foro, favor de hacerlo en servidor externo (Dropbox, Drive...) y dejan link. "Sin archivo no hay respuestas"

Favor de leer "Todos los temas" Click aquí.

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

kuskis


Hola buenos dias otra vez, a ver si me explico, lo que yo quisiera hacer, si es que se puede, es que si en cualquier celda del libro existe el valor "3" o el "4", y la siguiente contiene el valor "1", aunque no este solo, si no que lo contenga, se le podria dar formato a esta ultima a modo de aviso.
Esto es para un calendario laboral, por un tema de descanso de 12 horas entre turnos, para que si se da el caso avise cambiando de color, no se si me he explicado bien, espero que si, me despido con un saludo agradeciendo de antemano vuestra colaboracion.

Igtelo

avatar
Hola Kuskis.
Lo que pide es sencillo para hacer, peeeeeeeero necesitamos tu archivo. Lee las normas del foro y el anuncio en rojo...

Saludos
Ignacio Téllez

kuskis


Muchas gracias por responder Ignacio, mira basicamente de lo que se trata es de que si en cualquier celda del libro entre la B3 y la AF130 hay un 3 o un 4, solos o acompañados y en la siguiente celda (hacia la derecha) hay un 1 o un 2 solos o acompañados, la celda que contiene el 1 o el 2 cojan el formato que se les de, a modo de aviso,no se si me explicado bien, muchas gracias por las molestias, un saludo ahi va el link del libro, gracias otra vez.

https://www.dropbox.com/s/bstp3fu6hj8y8r4/CALLENDARIO%202018.xlsm?dl=0

Igtelo

avatar
Hola Kuskis.

Son bucles pero será de la forma más sencilla para que les entiendas. La macro la ejecutas con teclas CTRL+K o si gustas agregas un botón, en el módulo 3 de VBA la encuentras.
Dejé solo la hoja definitivo, las demás no tienen ningún caso
Código:
Sub Identifica()
Dim celda As Range, w as integer

'1o. Borramos el color magenta del rango
For Each celda In [B3:AF130]
If celda.Interior.Color = vbMagenta Then celda.Interior.Color = xlNone
Next

'Si celda contiene 3 o 4 y la de la derecha contiene 1, pone color magenta
For Each celda In [B3:AF130]
If celda Like "*3*" And celda.Offset(, 1) Like "*1*" Or celda Like "*4*" And celda.Offset(, 1) Like "*1*" Then
   celda.Offset(, 1).Interior.Color = vbMagenta
End If

'Si celda contiene 3 o 4 y la de la derecha contiene 2, pone color magenta
If celda Like "*3*" And celda.Offset(, 1) Like "*2*" Or celda Like "*4*" And celda.Offset(, 1) Like "*2*" Then
   celda.Offset(, 1).Interior.Color = vbMagenta
End If
Next

'Deja en color azul los días de cada mes
For w = 13 To 123 Step 11
  Range("A" & w, "AF" & w).Interior.ColorIndex = 20
Next

End Sub

'NOTA: Los asteriscos indican que puede haber cualquier caracter antes y despues de cada número

https://www.dropbox.com/s/ci2fufeev35g4wp/Igtelo-Kuskis-Color%20celda%20seg%C3%BAn%20condici%C3%B3n.xlsm?dl=0

Te recomiendo veas la forma de optimizar tu archivo, es lento y pesado.

Saludos
Ignacio Téllez

5RESUELTO agradecido el 27/10/18, 02:41 pm

kuskis


Muchisimas gracias Ignacio, eres un crack, nos va a facilitar mucho el trabajo, un abrazo muy fuerte, muchiiiiiisimas gracias, hasta pronto.
Vere si con la base de esta macro consigo yo hacer alguna, aunque la verdad no creo, por que este calendario lo he hecho yo ,pero desde cero en excel y despues de muchas pruebas fallidas, otra vez gracias.

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.