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 -
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 !
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:
- Excel - Rendre une feuille active entre deux dates
- Nombre de jours entre deux dates excel - Guide
- Liste déroulante excel - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Déplacer une colonne excel - Guide
- Word et excel gratuit - Guide
2 réponses
Bonjour,
Exemple :
placer ce code dans le Module ThisWorkbook :
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...
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 !
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 !
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.
Il te faudra utiliser des blocs
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").Valuene 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