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 :

Filtre avancé - Excel -Filtre avancé dans une Macro


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Juillet 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2011
    Messages : 2
    Par défaut Filtre avancé - Excel -Filtre avancé dans une Macro
    Bonjour,
    J'ai un problème avec Excel 2007 et 2010

    Je viens d'installer MS Office 2010 et en voulant travailler avec une ancien fichier (97-2003) avec une macro qui utilise la fonction "Filtre avancé", je me suis rendu compte que la macro ne fonctionne plus.
    Problème:
    Vous savez, cette fonction nécessite de définir: une plage, une zone de critères et une zone "Copier dans".
    Or, quand j'utilise le filtre avancé manuellement et que j'inscrit un nombre décimal dans la zone de critère ex 35,73 (notez ici j'utilise une virgule) le filtre fonctionne et les bonnes données apparaissent dans la zone "Copier dans".
    Mais quand j'enregistre la même séquence dans une macro, pour que la macro fonctionne, je dois changer la virgule pour un point. Drôle non!
    N.B. Mon système est configuré pour utiliser la virgule comme séparateur décimale.
    Alors que faire?

  2. #2
    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
    Bonjour
    En vba, le séparateur décimal est toujours le point.

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Juillet 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2011
    Messages : 2
    Par défaut
    Voici la suggestion d'un collègue.

    la cellule E6 étant la cellule de la "zone de critères" où l'on rentre une valeur décimale comprenant une virgule ex. 3,78

    Je l'ai essayé et ça marche.

    Salutations


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub Macro1()
    ' Macro1 Macro
        Dim x, rep As String
        x = Range("E6").Value
        rep = WorksheetFunction.Substitute(x, ",", ".")
     
        Range("e6").Value = rep
     
        Range("B2:C12").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
            "E5:F6"), CopyToRange:=Range("E7:F7"), Unique:=False
     
        Range("e6").Value = x
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2010] Traduire fonction excel en VBA dans une macro
    Par Foifoi dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 23/09/2014, 15h31
  2. Filtre avec zone variable dans une macro
    Par encorejeune dans le forum OpenOffice & LibreOffice
    Réponses: 2
    Dernier message: 14/09/2014, 09h46
  3. [E-07] forcer un filtre dans une macro
    Par joniyyy dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 29/01/2009, 13h43
  4. Comment insérer une macro excel dans une macro word?
    Par max2245 dans le forum VBA Word
    Réponses: 15
    Dernier message: 07/01/2006, 17h44
  5. pb dans une macro excel VB
    Par syl221 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/10/2005, 17h29

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