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 pour VBA avec TCD


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut Problème pour VBA avec TCD
    Bonjour à tous!

    je suis nouvelle dans ce forum alors si jamais ma question n'est pas au bon endroit je m'en excuse d'avance!


    Voilà, j'ai fait un programme avec un tableau croisé dynamique et des macros (visual basic)...

    je vais rechercher des inforamtions qui sont sur autre page et ainsi à l'aide du TCD et VBA, les données se trient d'elles même.

    petit aperçu du tableau croisé dynamique:

    Groupe n° / somme temps d'indisponibilité
    1 15
    2 3
    3 23
    4 8
    6A 12
    6B 7
    ... ... (le nombre de ligne du tableau change suivant les données que je lui donne



    Jusqu'à là je n'ai pas de problème sauf que je veux les remettre par groupe (gpe de 1 à 3 ; gpe de 4à5; gpe de 6 à 9)

    Or mes données changent tous le temps c'est à dire que je peux avoir une fois que le groupe n° 1,2,3 ou 2,6A,4 ou ....
    Donc lorsque je créer un "Groupe" avec le tableau croisé dynamique ( en enregistrant pour la macro) hé bien tout marche ... à condition que je ne change pas mes données ( si jamais je n'est plus de n°1, VB m'indiquera qu'il n'existe pas donc erreur, donc sa ne marche pas...

    J'aimerais faire un truc du genre :
    SI "le n° n'existe pas " ALORS ne pas en tenir compte



    Je ne sais pas si je me suis bien fait comprendre ... et si cela est possible

    Merci d'avance pour vos réponse

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    Je ne sais pas quelle est ta version d'Excel.
    La première chose à tenter, c'est de cocher la propriété du champ Groupe : afficher les éléments sans données.

    Cela permet d'avoir toutes les lignes.

    Cordialement,

    PGZ

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut
    Tout d’abord MERCI pour la rapidité de la réponse !!

    Voilà, je ne sais pas pourquoi mais d'un coup, je me suis demandé pourquoi en faite j'utilise des macros!!
    Donc j'ai fait mon TCD qui va rechercher et trier mes données, je créer mes Groupes, puis je fais actualiser quand il y a des changements... et sa marche ( sur un petit programme) donc je vais essayer de le refaire sur mon vrai programme. Mais là est la question, à quoi servent les macros??..



    J'ai comme même essayé votre suggestion :


    J’ai fait se que vous avez proposé et oui, sa marche plutôt bien, car le message d’erreur n’apparait plus (sous VBA)
    Sauf que, lors du groupement :
    Je vous explique comment je fais : je sélectionne la cellule B3, B6 et B7, (ces cases correspondent à mon numéro d’identité 1, 2, 3) ensuite, clic droit et « Grouper ». Mon groupe se forme alors, sauf que, comme je vais chercher mes informations sur des données qui changent tous les mois, il se peut que d’un mois sur l’autre, si par exemple il n’y a plus de n° d’identité 2, et bien toutes les cellules se décalent.

    Donc lors de ma sélection de cellule (B3, B6 et B7) pour le groupe, j’aurais la cellule B7 qui correspondra à mon n° identité 4

    Donc mon problème viens de VBA je pense, J’ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Range("B3,B6,B9").Select                 
        Range("B9").Activate
        Selection.Group
        Range("B3").Select
        ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("FCRIT2"). _
            PivotItems("Groupe1").ShowDetail = False
        ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("FCRIT2"). _
            ShowAllItems = True

    Il faudrait qu’a la première ligne, au lieu de ‘’B3, B6, B9’’, je puisse choisir d’aller chercher ‘’numéro d’identité 1 dans le tableau croisé dynamique ‘’ au lieu de ‘’B3’’ (comme ça je pense qui recherchera automatiquement dans tous le tableau est non que dans la cellule ‘’B3’’

    (C’est un Excel 2002)



    Encor merci pour la rapidité et l'aide apporté

    Cordialement

    Zéria

  4. #4
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    Citation Envoyé par Zéria Voir le message
    Voilà, je ne sais pas pourquoi mais d'un coup, je me suis demandé pourquoi en faite j'utilise des macros!!
    Donc j'ai fait mon TCD qui va rechercher et trier mes données, je créer mes Groupes, puis je fais actualiser quand il y a des changements... et sa marche ( sur un petit programme) donc je vais essayer de le refaire sur mon vrai programme. Mais là est la question, à quoi servent les macros??..
    VBA, quand on en n'a pas besoin, ça ne sert à rien. Sauf à être partisant du "pourquoi faire simple quand on peut faire compliqué?".

    Donc si l'interface opérateur convient, tout va bien.

    Cordialement,

    PGZ

Discussions similaires

  1. [XL-2007] Problèmes pour créer un TCD via VBA
    Par pétrin dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/08/2014, 16h14
  2. Problème pour compiler avec gcc
    Par Mick.Zen dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 28/06/2006, 14h05
  3. Réponses: 7
    Dernier message: 04/06/2006, 17h00
  4. Réponses: 4
    Dernier message: 11/04/2006, 09h07
  5. Problème pour dialoguer avec port parallèle
    Par jejerome dans le forum C++
    Réponses: 8
    Dernier message: 16/05/2005, 11h13

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