Excel - Rendre une feuille active entre deux dates

arnoH Messages postés 16 Date d'inscription   Statut Membre Dernière intervention   -  
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je travaille actuellement sur un projet me demandant d'utiliser Excel, pour faciliter la saisie des données par les utilisateurs j'aurais besoin que ceux-ci ne puissent saisir des données que pendant des intervalles limités. Des intervalles d'heures mais également de dates

Je ne suis pas un expert en VBA mais j'ai déja réussi à m'arranger pour les intervalles d'heures ( If Time >= "08" And Time < "08:30:00" Then...)
Je me demandais comment je pouvais faire la même chose avec des dates pour rendre inactive la feuille.

Si je devais schématiser je cherche ceci :

IF date est entre 1aout et le 07aout THEN on désactive la feuille.

Cependant je ne connais pas la fonction me permettant de mentionner des dates, ni celle permettant de rendre inactive la saisie dans une feuille(je pense pouvoir trouver mais les dates je n'y parviens pas)

Quelqu'un pourrait m'indiquer vers ou chercher ? Ou simplement comment sélectionner une date.

En vous remerciant par avance, a vot bon coeur !

A voir également:

2 réponses

pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Bonjour,

Exemple :
placer ce code dans le Module ThisWorkbook :
Private Sub Workbook_Open()
If Date > CDate("07/08/2014") And Date < CDate("09/08/2014") Then Sheets("Feuil4").Visible = xlVeryHidden Else Sheets("Feuil4").Visible = True
End Sub 


Date
= date du jour
CDate()
: transforme le paramètre donné en une date
.Visible 
: propriété d'affichage de la feuille
xlVeryHidden
: masque la feuille concernée sans même pouvoir la retrouver dans le menu "Afficher" des feuilles...
1
arnoH Messages postés 16 Date d'inscription   Statut Membre Dernière intervention  
 
Franchement, merci beaucoup

J'ai cependant une question : les données de la feuille cachée peuvent elles être exploitées pour un reporting par exemple ?

Également n'existe t-il pas un moyen de simplement désactiver la page ? En somme elle est toujours visible mais c'est un bloc de béton on ne peut rien y saisir (ou ne rien saisir dans une sélection donnée de cellules)

En tout cas merci beaucoup !
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Oui.
tu peux t'en servir dans des formules, ou même via VBA.
Cependant, via VBA, l'accès direct ne pourra pas se faire.
MaVar = Sheets("Feuil4").Range("A1").Value 
ne fonctionnera pas
Il te faudra utiliser des blocs
With
-
End With
, comme ceci :
With Sheets("Feuil4")
MaVar = .Range("A1").Value 'A NOTER : le point devant Range
End With
0