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 :

[VBA-E] Utiliser le range dans un tab croisé dynamique


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Points : 503
    Points
    503
    Par défaut [VBA-E] Utiliser le range dans un tab croisé dynamique
    bonjour

    en créant un tableau croisé dynamique, Excel m'a généré le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Genere_tcd()
     
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
     
        ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
            "F_SNC!R1C1:R307C9").CreatePivotTable TableDestination:=Sheets("Feuil2").Range("A1"), _
            TableName:="TabCroiDyn"
     
    End Sub
    en fait, Excel ne se sert pas vraiment de sa sélection et prend, en dur, la plage de la cellule A1 à la cellule I307
    mais ce tableau n'a pas un nombre de lignes fixé (mais 9 colonnes), je veux donc rendre dynamique cette plage

    je me lance en rajoutant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim nbLignes As Integer
    Dim myRange As Range
     
    nbLignes = Selection.Rows.Count
    Set myRange = Sheets("Feuil1").Range("A1:I" & nbLignes)
    mais lorsque j'écris:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
            myRange).CreatePivotTable
    cela plante
    j'ai essayé plusieurs méthodes/propriétés et ça ne fonctionne pas

    comment utiliser et/ou définir l'objet "Range" dans "Pivotcaches.Add"?

    merci! (ça urge)

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Salut GolDoz,
    Ton sourcedata pour ton tableau croisé dynamique doit avoir une forme particulière qui ne correspond pas à un range mais à :
    SourceData:= "F_SNC!R1C1:R307C9"
    "nom_de_la_feuille!Adresse_Du_Tableau"
    nom_de_la_feuille = "Feuil1"
    Adresse_du_Tableau = "R" & Ligne_début & "C" & Colonne_début & _
    ":R" & Ligne_fin & "C" & colonne_fin

    Bon courage

  3. #3
    Membre confirmé

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Points : 503
    Points
    503
    Par défaut
    ça marche...

    je l'avais pourtant essayé, je n'étais pas bien réveillé sans doute...
    je vais prendre ma pause

    merci

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Cool
    Par contre tu devrais mettre ton tag résolu

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

Discussions similaires

  1. [VBA-Excel] Faire un filtre dans un tableau croisé dynamique
    Par SFrane dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 27/11/2006, 15h05
  2. [VBA-E]Utiliser un indice dans un nom d'objet
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/06/2006, 16h42
  3. [VBA-E]Utiliser une variable dans une formule
    Par bossu dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 04/06/2006, 15h25
  4. Réponses: 1
    Dernier message: 19/05/2006, 18h25
  5. [VBA]xl*-Utiliser F1...F12 dans un form
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 40
    Dernier message: 27/01/2006, 11h34

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