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 :

run-time error 91 Tableau croise dynamique VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Janvier 2017
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Janvier 2017
    Messages : 7
    Par défaut run-time error 91 Tableau croise dynamique VBA
    Bonjour,

    Jessaye de creer un tableau croise dynamique en VBA mais malhereusement j ai un message de type erreur en lancant la macro

    Run-time error 91
    Object Variable or with block variable not set
    voir le code en rouge

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    Sub PivotTablenew()
    
    Rem -----information----
    Rem Delete the existing pivot Tables
    
    Application.DisplayAlerts = False
    
    Rem Declare variable
    Dim PvtTbl As PivotTable
    Dim WsData As Worksheet
    Dim wspvtTbl As Worksheet
    Dim rngData As Range
    Dim LastRow As Integer
    
    With Sheets("main work centers")
        LastRow = .Cells(.Rows.Count, "G").End(xlUp).Row
    End With
    
    Rem determine which worksheet contains the data source --Dim WsData As Worksheet--
    Set WsData = Worksheets("main work centers")
    
    Rem determine where the pivot table will be created --Dim wspvtTbl As Worksheet--
    Set wspvtTbl = Worksheets("pivot")
    
    Rem delete all pivotables in the worksheet
    For Each PvtTbl In wspvtTbl.PivotTables
    
    PvtTbl.ClearTable
    
    Next PvtTbl
    
    Application.DisplayAlerts = True
    
    Rem Set source data range
    rngData = WsData.Range("G15:AB" & LastRow)
    
    Rem create a table cache + pivot table
    
    ThisWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=rngData).CreatePivotTable  _
    TableDestination:=wspvtTbl.Range("A1"), TableName:="PivotTable1", Defaultversion:=xlpivoTableVersion12
    
     End Sub
    Quelqu un pourrait me guider ?

    Merci d avance

    M

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    une variable objet nécessite l'instruction Set quand on lui affecte quelque chose

    c'est d'autant plus dommage que ta ligne de commentaire juste au dessus l'utilise clairement dans son explication

  3. #3
    Membre du Club
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Janvier 2017
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Janvier 2017
    Messages : 7
    Par défaut Run-time error 5
    Maintenant j ai un message nouveau :
    run-time error 5 --> invalid procedure call or argument
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ThisWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=rngData).CreatePivotTable _
    TableDestination:=wspvtTbl.Range("A1"), TableName:="PivotTable1", Defaultversion:=xlpivoTableVersion12
    Merci pour votre aide

  4. #4

Discussions similaires

  1. Run Time Error 6 Overflow VBA du à appel C++(dll)
    Par mamok dans le forum Général VBA
    Réponses: 1
    Dernier message: 15/06/2007, 14h27
  2. [VBA-E] - run-time error "Type mismatch"
    Par Chewi dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 11/02/2007, 18h44
  3. [VBA-E] Run-time error 1004, pourquoi ?
    Par Capsule dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 25/01/2007, 22h12
  4. [VBA-E] Tableau Croise Dynamique données dans table access
    Par winner103 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 06/11/2006, 11h49
  5. Réponses: 7
    Dernier message: 04/04/2006, 14h35

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