Desbloquear rango desde la fecha siguiente a hoy hasta final del año
publicado
hola a todos no soy experta pero estoy haciendo una macro donde en un listado de funcionarios x, puedan escoger una opción de ingreso del día siguiente, pero sin afectar el día de hoy que ya fue programado(Esta bloqueado), el que tengo a continuación solo permite desbloquear el día de hoy.
¿Como debo escribir la instrucción para que el rango desbloqueado sea a partir del día siguiente hasta final del año?. lo que tengo actualmente es:
El archivo original es una matriz donde en las filas x estan los nombres de los funcionarios y en las columnas i las fechas. ellos deben escoger entre 6 opciones de una lista. a partir del día siguiente a hoy.
hola a todos no soy experta pero estoy haciendo una macro donde en un listado de funcionarios x, puedan escoger una opción de ingreso del día siguiente, pero sin afectar el día de hoy que ya fue programado(Esta bloqueado), el que tengo a continuación solo permite desbloquear el día de hoy.
¿Como debo escribir la instrucción para que el rango desbloqueado sea a partir del día siguiente hasta final del año?. lo que tengo actualmente es:
El archivo original es una matriz donde en las filas x estan los nombres de los funcionarios y en las columnas i las fechas. ellos deben escoger entre 6 opciones de una lista. a partir del día siguiente a hoy.
Sub PROGRAMACION_DIARIA()
Dim contraseña As String
Dim Programación As Object
Dim myrange As Range
Dim celdi As Range, i As Long, x As Long
For i = 1 To Sheets.Count
Sheets(i).Protect
Next i
contraseña = LCase(InputBox("teclee contraseña", "contraseña"))
Select Case contraseña
Case "001"
For Each Sheet In ActiveWorkbook.Sheets
Sheet.Visible = True
Sheet.Unprotect
Next
MsgBox "tiene acceso de lectura/ escritura en todas las hojas."
Case "002"
With Sheets("Programación").Unprotect
x = ActiveWorkbook.Worksheets("Programación").Range("A" & Rows.Count).End(xlUp).Row
Set myrange = ActiveWorkbook.Worksheets("Programación").Rows("14:14")
Set celdi = myrange.Find(Date)
If celdi Is Nothing Then MsgBox "No Hay fecha se bloquea todo", , "": GoTo 0
i = celdi.Column 'la idea es que se bloquee el rango hasta hoy se debe programar todo el rango desde el siguiente dia de hoy.
ActiveWorkbook.Worksheets("Programación").Range(Cells(15, i), Cells(x, i)).Locked = False
ActiveWorkbook.Worksheets("Programación").Range(Cells(15, i), Cells(x, i)).FormulaHidden = False
0:
ActiveWorkbook.Worksheets("Programación").Protect
Exit Sub
End With
MsgBox " tiene acceso de solo lectura y escritura en su rango de celdas"
Case "Limitada"
ActiveWorkbook.Worksheets("Programación").Visible = True
MsgBox " tiene acceso de solo lectura en una hoja"
Case Else
MsgBox " contraseña incorrecta. Vuelva a intentarlo"
End Select
End Sub