Famille de feuilles de calcul Microsoft avec des outils pour l’analyse, le graphique et la communication des données.
D'accord, parce que je cherchais une ligne de code.
Daniel
Ce navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
Bonjour,
Je suis à créer une gestion budgétaire personnelle avec du VBA et des tableaux croisé dynamique.
Je tente, à partir de ma base de donnée, de regrouper des dates à partir de mon TCD qui prend sa source dans une base de données.
Voici ce que ça donne :
Comme vue à la première image, j'ai créé une 2e base de données et tenter le regroupement des dates :
Succès, ça fonctionne. Dans les deux bases de données j'ai les même formats de date. J'utilise Excel 2016 sur windows 10.
Dans ma BD réel lorsque je glisse date il met automatiquement les dates dans les lignes. Dans ma BD fictive, il regroupe par année et mois. Je dois dissocier puis regrouper selon mes critères et cela est normale.
Des solutions?
Merci
Famille de feuilles de calcul Microsoft avec des outils pour l’analyse, le graphique et la communication des données.
Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.
D'accord, parce que je cherchais une ligne de code.
Daniel
Copie ces deux macros dans un module et exécute la macro "test1" :
Sub test1()
For Each sh In Sheets
For Each pt In sh.PivotTables
Debug.Print sh.Name & " " & pt.Name & " " & pt.PivotCache.Index
' PTNewCache pt
Next pt
Next sh
End Sub
Sub PTNewCache(pt)
Dim wsTemp As Worksheet
' Dim pt As PivotTable
'
' On Error Resume Next
' Set pt = ActiveCell.PivotTable
'
' If pt Is Nothing Then
' MsgBox "Active cell is not in a pivot table"
' Else
Set wsTemp = Worksheets.Add
ActiveWorkbook.PivotCaches.Create( _
SourceType:=xlDatabase, _
SourceData:=pt.SourceData).CreatePivotTable _
TableDestination:=wsTemp.Range("A3"), _
TableName:="PivotTableTemp"
pt.CacheIndex = wsTemp.PivotTables(1).CacheIndex
Application.DisplayAlerts = False
wsTemp.Delete
Application.DisplayAlerts = True
' End If
End Sub
Daniel
Efficace! J'ai eu un massage de difficulté de récupérer l'ensemble des données. Voulez-vous poursuivre?
Est-ce difficile à faire car j'ai avancé dans mon classeur depuis hier?
Dans ce classeur j'aurai peut-être 2 ou 3 autres tcd.
Ce sont des minutes ou des secondes?