Liste déroulante de dates mise à jour "automatiquement"

safranien

XLDnaute Occasionnel
Bonjour à tous,

je sollicite votre aide pour un petit probleme que je rencontre dans l'élaboration d'un fichier excel, et dont je n'ai pas trouvé de soluce sur le site.
Dans le fichier joint, je viens copier/coller des données dans l'onglet "données" (de BàE, la colonne à c'est moi qui'ai ajoutée pour mes tentatives) issues s'une extraction d'une application interne à ma société.
A partir de ces données, j'aimerais que, dans l'onglet "2009", de A3 à A18, avoir pour chaque cellule une liste déroulante donnant le choix entre toutes les dates de la colonne C de l'onglet "données".
A savoir que ces données vont s'actualiser tous les mois, et qu'il peut y avoir tout aussi bien 10 dates pour un mois, qu'une seule.
Donc voila ce que je cherche à faire, qu'a chaque copier/coller que je ferais à chaque fin de mois, avec donc des dates supplementaires dans les données, que la liste de choix de l'onglet "2009" se "mette" à jour automatiquement.

J'espere que vous pourrez m'aider.

Merci d'avance.

Cordialement.
 

Pièces jointes

  • Liste dates E.D.zip
    48.5 KB · Affichages: 44
  • Liste dates E.D.zip
    48.5 KB · Affichages: 47
  • Liste dates E.D.zip
    48.5 KB · Affichages: 49

Efgé

XLDnaute Barbatruc
Re : Liste déroulante de dates mise à jour "automatiquement"

Bonjour safranien,
Pas certain d'avoir compris.
J'ai ajouter une plage nommée "Liste" sur la feuille données (Insertion/nom/Définir Fait référence à) La formule est
Code:
=DECALER(données!$C$2;;;NBVAL(données!$C:$C)-1)
Cette plage s'adapte au nombre de ligne présentent en colonne C.
Puis utiliser la liste pour la validation des cellules sur la feuille 2009.
Cordialement
 

Pièces jointes

  • Liste dates E.D.zip
    47.7 KB · Affichages: 42
  • Liste dates E.D.zip
    47.7 KB · Affichages: 40
  • Liste dates E.D.zip
    47.7 KB · Affichages: 39

safranien

XLDnaute Occasionnel
Re : Liste déroulante de dates mise à jour "automatiquement"

Bonjour Efgé,

merci pour ta réponse. Ta solution semble fonctionner. Par contre je vais avoir un autre soucis auquel je n'avais pas pensé:
en plus de gas naturel, je vais avoir dans cet onglet édonnée" plein d'autres appellation (compteur A, compteur B etc) qui vont avoir les memes dates de saisies que celles de "gas naturel".
Si je comprends bien ta méthodologie, je vais, dans la liste déroulante, me retrouver avec plusieurs fois les memes date?
Comment faire pour que la liste propose les dates uniquement de "gas naturel"?
Je rejoins le fichier.
 

Pièces jointes

  • Liste dates E.D v2.zip
    48.2 KB · Affichages: 31

Efgé

XLDnaute Barbatruc
Re : Liste déroulante de dates mise à jour "automatiquement"

Re
Je ne vois qu'une méthode : recréer la liste des dates à chaque fois.
Pour ça je propose un bouton avec une macro :
Code:
Private Sub CommandButton2_Click()
With Sheets("données")
.Range("H2:H" & Range("H" & Application.Rows.Count).End(xlUp).Row).ClearContents
For i = 2 To .Range("B" & Application.Rows.Count).End(xlUp).Row
    If .Cells(i, 2).Value = "Gaz naturel" Then
        j = .Range("H" & Application.Rows.Count).End(xlUp).Row + 1
        .Cells(j, 8).Value = .Cells(i, 3).Value
    End If
Next i
End With
End Sub
Si un formuliste passe par là, je pense qu'il y a d'autres solutions....
Cordialement
 

Pièces jointes

  • Liste dates E.D(2).zip
    38.2 KB · Affichages: 31

safranien

XLDnaute Occasionnel
Re : Liste déroulante de dates mise à jour "automatiquement"

en fait j'ai un en tete qui fait que la colonne de titre bleue est à la ligne 12.
Donc est qu'il faut modifier qqch dans le code de la macro en plus de la fonction decaler?
 

safranien

XLDnaute Occasionnel
Re : Liste déroulante de dates mise à jour "automatiquement"

Bonjour Efgé,

bon, le fichier à l'air de fonctionner au poil. Par contre j'ai un dernier souci (je pense que c'est le dernier lol), je voudrais protéger mes feuilles mais du coup le bouton de la macro "beug" parce que la feuille est protégée.
J'ai donc essayé d'insérer ActiveWorkbook.UnProtect ("mdp") et ActiveWorkbook.Protect ("mdp") en début et fin de macro mais mon soucis est que dans l'onglet données, je veux conserver le filtrage de données. et bien sur, avec juste ce code, toutes les cellules se verrouillent et je ne peux plus utiliser le filtrage de donnée.
Une idée de ce qu'il faudrait que je rajoute au code stp????

Merciiiiiiiiiiiiiiiiiii
 

Efgé

XLDnaute Barbatruc
Re : Liste déroulante de dates mise à jour "automatiquement"

Bonjour safranien,
Pas certain d'avoir compris le problème...
Je pense qu'il est préférable de protéger les feuilles et non le classeur. Pour votre macro vous utiliserez Sheets("Données").Unprotect ("mdp") et Sheets("Données").Protect ("mdp")
Vous pouvez : selectionner les cellules à laisser libre, Click droit, format de cellule, onglet protection, décocher Verouillée.
Quand vous allez reprotéger la feuille (Sheets("Données").Protect ("mdp") )ces cellules seront libres.
Cordialement
 

safranien

XLDnaute Occasionnel
Re : Liste déroulante de dates mise à jour "automatiquement"

C'est ce que j'ai fait. J'ai sélectionné les colonnes B à O, format de cellule et décoché verrouillé.
Ensuite je fais outils, protection, proteger la feuille. Je coche l'option de filtrage de données et OK.
Donc apres ca, effectivement je n'ai que les colonnes B à O qui sont déverouillées, et je peux utiliser le filtrage de données.
Mais lorsque j'utilise le bouton de la macro, apres le messagebox "liste generee", les cellules des colonnes B à O sont tjrs libres mais je ne peux plus utiliser le filtrage de données !!!!!!
Moi y en a pas comprendre pourquoi ????

Sub Liste_dates()
Sheets("données").Unprotect ("blablabla")
With Sheets("données")
.Range("AA1:AA" & Range("AA" & Application.Rows.Count).End(xlUp).Row).ClearContents
For i = 13 To .Range("C" & Application.Rows.Count).End(xlUp).Row
If .Cells(i, 3).Value = "Gaz naturel" Then
j = .Range("AA" & Application.Rows.Count).End(xlUp).Row + 1
.Cells(j, 27).Value = .Cells(i, 4).Value
End If
Next i
End With
MsgBox "Liste générée"
Sheets("données").Protect ("blablabla")
End Sub
 

safranien

XLDnaute Occasionnel
Re : Liste déroulante de dates mise à jour "automatiquement"

Bonjour Efgé,

j'ai inséré ce morceau de code code juste avant endsub:

Sheets("données").Protect AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True, Password:="mdp"

et ca a l air de fonctionner, j'ai accès aux filtres.
Pouvez-vous me donner votre avis?

Merci et bonne journée.
 

Discussions similaires

Réponses
1
Affichages
132
Compte Supprimé 979
C

Membres actuellement en ligne

Statistiques des forums

Discussions
312 361
Messages
2 087 629
Membres
103 613
dernier inscrit
luluinmauritius