Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/11/2010, 12h07   #1
Membre régulier
 
Guillaume
Inscription : décembre 2007
Messages : 161
Détails du profil
Informations personnelles :
Nom : Guillaume
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations forums :
Inscription : décembre 2007
Messages : 161
Points : 91
Points : 91
Par défaut Créer un tableau croisé dynamique dans Excel depuis Access

Bonjour,
suite à un export de données vers Excel, mon client me demande de créer un tableau croisé dynamique. Dans Excel, le code suivant fonctionne très bien mais dans Access j'obtiens l'erreur '5' : Argument ou appel de procédure incorrect

Code :
1
2
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:="Détail_par_réf!R7C1:R2588C47").CreatePivotTable _
        TableDestination:="TCD_par_famille!R3C1", TableName:="TCD", DefaultVersion:=xlPivotTableVersion10
PS : merci d'éviter les réponses du type : "tu n'as qu'à faire ton analyse croisée dans Access puis exporter le résultat dans Excel", c'est le côté dynamique du tableau (pouvoir changer les filtres, etc...) qui intéresse mon client.
dut-dut est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 13h40   #2
Membre régulier
 
Guillaume
Inscription : décembre 2007
Messages : 161
Détails du profil
Informations personnelles :
Nom : Guillaume
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations forums :
Inscription : décembre 2007
Messages : 161
Points : 91
Points : 91
Re-bonjour,
j'ai finalement trouvé le fond du problème !

Access n'accepte pas la syntaxe du type "R7C1:R2588C47". Il faut donc de changer celle-ci comme dans la correction ci-dessous :
Code :
1
2
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=Sheets("Détail_par_réf").Range("A7:AU2588")).CreatePivotTable _
        TableDestination:=Sheets("TCD_par_famille").Range("A3"), TableName:="TCD", DefaultVersion:=xlPivotTableVersion10
Je place le flag "Résolu" si jamais cela s'avère utile à quelqu'un d'autre.

@+
dut-dut est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 13h40   #3
Rédacteur/Modérateur
 
Avatar de jpcheck
 
Jean-Philippe ANDRÉ
Inscription : juillet 2007
Messages : 7 863
Détails du profil
Informations personnelles :
Nom : Jean-Philippe ANDRÉ
Âge : 28
Localisation : France

Informations forums :
Inscription : juillet 2007
Messages : 7 863
Points : 10 743
Points : 10 743
Envoyer un message via MSN à jpcheck
salut,

attention, quand tu utilises activeworkbook depuis Access, je ne garantis pas que:
- ActiveWorkbook soit correctement pris en compte par Access, passe plutot par ton objet Workbook que tu manipules en amont dans ton code pour etre certain de pas partir sur un classeur annexe.
- que les valeurs type xlDatabase soient avec les valeurs implementees dans Excel.

- tu passes par Access 2002, mais tu as une version 10 dans ton appel de table pivot xlPivotTableVersion10, n'est-ce pas un point bloquant ?

En esperant etre clair
__________________
Pas de question technique par MP, je ne réponds pas

Mon perso ? Une vraie brute

Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access
jpcheck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 13h42   #4
Membre régulier
 
Guillaume
Inscription : décembre 2007
Messages : 161
Détails du profil
Informations personnelles :
Nom : Guillaume
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations forums :
Inscription : décembre 2007
Messages : 161
Points : 91
Points : 91
@ jpcheck : C'est ce qu'on appelle des réponses simultanées...
Merci pour la contribution !
dut-dut est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h27.


 
 
 
 
Partenaires

Hébergement Web