Jump to content

ESTABLECER FECHA MAXIMA DE MODIFICACIÓN


Carlos Valenzuela

Recommended Posts

Hola, compañeros de AyudaExcel!

Me pueden decir si es posible establecer una fecha  final para la modificación de un documento de excel, les platico realice un documento y me piden que si es posible que se bloquee cada mes, y para el siguiente mes solamente copiar un archivo original vació y volver a colocarle una fecha de cierre...y de ser posible me pueden decir como?

Gracias de ante mano!

Link to comment
Share on other sites

Cambia "ActiveSheet" por "ActiveWorkBook" :) . De todas las maneras deberías tener claro qué quieres proteger. Te dejo un enlace de Microsoft para que lo consultes y veas las diferencias entre proteger a nivel de libro u hoja:

Protección en Excel

Siquisieras proteger libro y hojas, el código sería:

 

Sub Proteger()     
On Error GoTo fin     
Dim sht As Worksheet     

Application.ScreenUpdating = False         
ActiveWorkbook.Protect ("contraseña")         
For Each sht In ActiveWorkbook.Worksheets             
If sht.Visible = True Then                 
sht.Protect ("contraseña1")             
End If         
Next 

fin: 
End Sub

 

Link to comment
Share on other sites

gracias @Haplox tu codigo es correcto, pero como seria si la condición fuera una fecha, que en el momento que pase esa fecha establecida el libro se bloquee?

Cita
Hace 8 horas, Haplox dijo:

Sub Proteger() On Error GoTo fin Dim sht As Worksheet Application.ScreenUpdating = False ActiveWorkbook.Protect ("contraseña") For Each sht In ActiveWorkbook.Worksheets If sht.Visible = True Then sht.Protect ("contraseña1") End If Next fin: End Sub

 

 

Link to comment
Share on other sites

Ten en cuenta que todo esto es sobre teoría, pero me imagino que sería algo como:
 

Sub Proteger()
On Error GoTo fin
Dim sht As Worksheet
Dim fchLimite as Date
Dim fchActual as Date

Application.ScreenUpdating = False

fchaLimite=CDate(la que sea)
fchActual=Date 

If fhcActual > fchLimite Then
ActiveWorkbook.Protect ("contraseña")
For Each sht In ActiveWorkbook.Worksheets
If sht.Visible = True Then
sht.Protect ("contraseña1")
End If
Next
End If
fin:
End Sub

Si quisieras que este código se activase al abrir el libro, deberias ponerlo en "ThisWorkBook" (en el editor de VBA) y cambiar el:

Sub Proteger() 

por

Sub Auto_Open()

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Guest
This topic is now closed to further replies.
  • Crear macros Excel

  • Posts

    • Hola tod@s!!! me gustaría saber como puedo capturar los datos de un formulario a un otro libro (que no sea el libro que contiene la macro con el form). La idea es que varias personas puedan ir criando datos desde formularios "personales" y que estos datos generados por todos sean grabados  una única hoja. ahora mismo tengo el formulario funcionando, pero cada usuario guarda en "su archivo" la información. :( les agradezco de antemano toda la ayuda!!!
    • Hola sagamoal Ser miembro de paga, te da algunas ventajas, como subir archivos. Prueba esta formula, deberás adecuar a tus rangos =SI(INDICE(MES(Hoja1!$D$5:$D$9)=7,COINCIDIR(B6,Hoja1!$B$5:$B$9,)),INDICE((Hoja1!$D$5:$D$9,Hoja1!$E$5:$E$9),COINCIDIR(B6,Hoja1!$B$5:$B$9,),,SI(Hoja2!C6="i",1,2)),"") B6 es el código, y lo busca en la hoja 1 en la columna que corresponda. te adjunto imágenes para que te guíes. hoja1 Espero te sea de utilidad Saludos, Silvia   Hoja2    
    • Esta es la propiedad: ActiveSheet.Shapes(ShapeName).Fill.Transparency = valor (Entre 0 y 1) Por asociación con el resto de scrollsbar, no creo que un nuevo control para que controle esta propiedad.
    • Muy buenas. Espero su ayuda, en poder mostrar la fecha, cuando estén en cierta condición. En la Hoja1, se ingresan los datos, ya sea el código de la persona, la fecha de ingreso y la fecha de retiro. Codigo Nombres F.Ingreso F.Retiro 10 X1 01/02/2020   20 X2 01/02/2020 20/07/2021 30 X3 01/02/2020   40 X4 01/02/2020   100 X10 01/02/2020   110 X11 01/02/2020   120 X12 01/02/2020   130 X13 01/07/2020   140 X14 01/02/2020   150 X15 10/07/2020   160 X16 01/02/2020   170 X17 01/02/2020   180 X18 01/02/2020   190 X19 23/07/2021   200 X20 01/06/2021   En la hoja2, se ingresa el código de la persona y ademas un carácter, que es la novedad, cuando es I, debe mostrar todas las fechas que están dentro del mes, eso se lo relaciona con la fecha del cierre, y la letra R, cuando es la fecha de retiro.   Fecha Cierre 30/07/2021       Codigo Novedad Fecha 10 I   20 R 20/07/2021 30 I   40 I   100 I   110 I   120 I   130 I 01/07/2021 140 I   150 I 10/07/2021 160 I   170 I   180 I   190 I 23/07/2021 200 I         He tratado de subir el ejemplo en la planilla excel, pero hay líos para subirlo. gracias    
    • Muy buenas, estoy tratando de encontrar las fechas y poder mostrarlo. Es para mostrar el ingreso y retiro del persona. Los datos son digitados en la Hoja1, y en la hoja2, deben ser mostrados. Por decir cuando la novedad es R, debe mostrar la fecha de Retiro, Y cuando es I, las fecha que estén dentro del rango de la fecha de cierre que está en la hoja2 Adjunto un modelo. Gracias. He tratado de adjuntar el archivo modelo, pero no se puede ...
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy