IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème format date pour PivotFields


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut Problème format date pour PivotFields
    Bonjour,

    J'ai un ensemble de données, j'ai fait un TCD et je cherche à sélectionner dans mon TCD les dates inférieures à aujourd'hui.

    J'ai mis en Feuil4 cellule G1, la date d'aujourd'hui et j'ai essayé avec l'assistant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Date"). _
            PivotFilters.Add Type:=xlBefore, Value1:=Sheets("Feuil4").Cells(1, 7)
    Mais cela ne fonctionne pas....je pense qu'il s'agit d'un problème de format...J'ai donc essayé en utilisant la formule "TEXTE" pour ma cellule G1, mais idem, marche pas....

    Une petite aide ?

    En vous remerciant,

  2. #2
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Citation Envoyé par ericdev67 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Date"). _
            PivotFilters.Add Type:=xlBefore, Value1:=Sheets("Feuil4").Cells(1, 7)
    Bonjour.

    Peut-être en convertissant la valeur dans Value1 en valeur de type Long ou Double.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Value1:=CLng(Sheets("Feuil4").Cells(1, 7).Value)

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Bonjour,

    Non, fonctionne pas, message d'erreur....j'avais essayé aussi, sans succès....

    Merci pour votre aide,

    Le fichier test en PJ

    A+
    Fichiers attachés Fichiers attachés

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 552
    Par défaut
    Bonjour

    Il faut réinitialiser le filtre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Date").ClearAllFilters
        ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Date"). _
            PivotFilters.Add Type:=xlBefore, Value1:=Format(Date, "yyyy/mm/dd")

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci 78chris,

    Mais si je veux faire <= date (=aujourd'hui), cela ne fonctionne pas.....

    Merci pour votre aide,

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Tu as déjà xlbefore
    Ensuite tu peux toujours faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Type:=xlBefore, Value1:=Format(Date + 1, "yyyy/mm/dd")

  7. #7
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 552
    Par défaut
    Re
    Citation Envoyé par ericdev67 Voir le message
    Merci 78chris,Mais si je veux faire <= date (=aujourd'hui), cela ne fonctionne pas.....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PivotFilters.Add Type:=xlBefore, Value1:=Format(Date, "yyyy/mm/dd")
    veut pourtant bien dire antérieur à la date du jour...

    et cela fonctionne à condition d'effacer le filtre existant comme indiqué.

    Pour <= utilise comme proposé par rdurupt et mercatog : Date +1

Discussions similaires

  1. Problème format date pour utilisation DateDiff
    Par sat478 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 11/05/2010, 16h28
  2. Problème Format date
    Par Jiyuu dans le forum VB.NET
    Réponses: 5
    Dernier message: 21/08/2007, 16h52
  3. problème format date dans un datagrid
    Par bebert119 dans le forum ASP.NET
    Réponses: 11
    Dernier message: 14/08/2007, 15h38
  4. Problème format Date avec VS2003
    Par vaohdan dans le forum Windows Forms
    Réponses: 1
    Dernier message: 07/05/2007, 12h06
  5. Problème format date - SimpleDateFormat inversion mois/jour
    Par juanqui dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 07/02/2007, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo