Una ayuda porfa
Publicado por Rafi (71 intervenciones) el 12/01/2008 12:24:19
Hola a todos y Feliz año. Vereis estoy adaptando una BD "planing Hotel" encontrada en la Web del Buho, a mi establecimiento. Esta BD original tiene una función para colorear cuadros de texto independientes en un calendario, pero solo tiene la opción de poner dos colores y no consigo, pués no controlo bien los códigos, añadir un tercer color a una funcion de un módulo llamado semana. Ya modifiqué todas las funciones de los form que enlazan con éste y que os pongo a ver si podeis a yudarme:
Function CambiaColorSemana()
Dim ctl
Dim frm As Form
Set frm = Forms!frmocupacionsemanal!SubformSemana.Form 'Asignamos SubformSemana a una variable
For Each ctl In frm.Controls 'Recorremos todos los controles de SubFormSemana
If ctl.ControlType = acTextBox Then 'si es un cuadro de texto
If ctl.Value <> "" And Not IsNull(ctl.Value) Then 'Si está Ocupado
If ctl.Tag = "1" Then 'Si el Tag es 1 ==> Simple = Naranja
ctl.BackColor = 33023 'Naranja
Else 'En otro caso = Doble = Rojo
ctl.BackColor = 255 'Rojo
End If
Else 'Si no está ocupado
ctl.BackColor = 65280 'Verde
End If
End If
Next ctl
Set ctl = Nothing
Set frm = Nothing
End Function
Yo quisiera añadir el tercer color que sería esto:
Else 'En otro caso = Triple = Rosa
ctl.BackColor = 16744703 'Rosa
Corrí el código de la siguiente forma:
For Each ctl In frm.Controls 'Recorremos todos los controles de SubFormSemana
If ctl.ControlType = acTextBox Then 'si es un cuadro de texto
If ctl.Value <> "" And Not IsNull(ctl.Value) Then 'Si está Ocupado
If ctl.Tag = "1" Then 'Si el Tag es 1 ==> Simple = Naranja
ctl.BackColor = 33023 'Naranja
If ctl.Tag = "2" Then 'Si el Tag es 2==> Triple= Rosa
Else............................................................................................................................pero no me aclaro con los End If y Each, así que me salen errores de compilación diciendome que faltan End If y For que no se aplicar. Espero podais entenderlo así como lo puse, cosa un poco dificil ya que sin la BD al completo se complica el entender, pero espero vuestros comentarios como agua de mayo. GRACIAS.
Function CambiaColorSemana()
Dim ctl
Dim frm As Form
Set frm = Forms!frmocupacionsemanal!SubformSemana.Form 'Asignamos SubformSemana a una variable
For Each ctl In frm.Controls 'Recorremos todos los controles de SubFormSemana
If ctl.ControlType = acTextBox Then 'si es un cuadro de texto
If ctl.Value <> "" And Not IsNull(ctl.Value) Then 'Si está Ocupado
If ctl.Tag = "1" Then 'Si el Tag es 1 ==> Simple = Naranja
ctl.BackColor = 33023 'Naranja
Else 'En otro caso = Doble = Rojo
ctl.BackColor = 255 'Rojo
End If
Else 'Si no está ocupado
ctl.BackColor = 65280 'Verde
End If
End If
Next ctl
Set ctl = Nothing
Set frm = Nothing
End Function
Yo quisiera añadir el tercer color que sería esto:
Else 'En otro caso = Triple = Rosa
ctl.BackColor = 16744703 'Rosa
Corrí el código de la siguiente forma:
For Each ctl In frm.Controls 'Recorremos todos los controles de SubFormSemana
If ctl.ControlType = acTextBox Then 'si es un cuadro de texto
If ctl.Value <> "" And Not IsNull(ctl.Value) Then 'Si está Ocupado
If ctl.Tag = "1" Then 'Si el Tag es 1 ==> Simple = Naranja
ctl.BackColor = 33023 'Naranja
If ctl.Tag = "2" Then 'Si el Tag es 2==> Triple= Rosa
Else............................................................................................................................pero no me aclaro con los End If y Each, así que me salen errores de compilación diciendome que faltan End If y For que no se aplicar. Espero podais entenderlo así como lo puse, cosa un poco dificil ya que sin la BD al completo se complica el entender, pero espero vuestros comentarios como agua de mayo. GRACIAS.
Valora esta pregunta
0