Je fais une synthèse de données par un Tableau Croisée Dynamique en VBA.
Jusque là tout va bien!
Ensuite je dois copier ce tableau dans une autre feuille par copie, mais
uniquement les valeurs
Seulement, comme je dois "triturer" ce tableau dans tous les sens
(dupliquer,supprimer, modifier lignes), il me faut toutes les
données(etiquettes de lignes) dans toutes les cellules du tableau copier. Et
non pas comme le TCD (affichage hiérarchique), cellules vides.si même valeur
que ligne du dessus.
Avez-vous déjà fais ça en VBA? ou existe-t-il une procédure miracle...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Rouch
Bonjour Fabrice,
Une solution bruatle en VBA: (Je te donne le principe du raisonnement reste à l'écrire en VBA)
Copie/coller valeur du tableau Selectionne les colonnes de titre du tableau Balayage des colonnes (de 1 au nb de ligne de la sélection) Si la cellule est vide alors la valeur de la cellule = valeur de la cellule au dessus
Si tu as besoin d'aide pour l'écrire en VBA fais nous signe.
Sinon manuellement tu peux rajouter autant de colonne que tes titres (Je supose que tes titre sont en A1 à A5 et que tu as inseré la colonne F): et mettre la formule à partir de F2 à F5 en : Si(Estvide (F2);F1;A1) puis copier valeur de la colonne F sur la colonne A .
@+ Rouch'
On 7 oct, 17:07, "Fab25" wrote:
Bonjour,
Je fais une synthèse de données par un Tableau Croisée Dynamique en VBA. Jusque là tout va bien!
Ensuite je dois copier ce tableau dans une autre feuille par copie, mais uniquement les valeurs
Seulement, comme je dois "triturer" ce tableau dans tous les sens (dupliquer,supprimer, modifier lignes), il me faut toutes les données(etiquettes de lignes) dans toutes les cellules du tableau copie r. Et non pas comme le TCD (affichage hiérarchique), cellules vides.si même valeur que ligne du dessus.
Avez-vous déjà fais ça en VBA? ou existe-t-il une procédure mirac le...
En excel 2003 ou si' pas le choix en Excel 2007
merci d'avance
Bonjour Fabrice,
Une solution bruatle en VBA: (Je te donne le principe du raisonnement
reste à l'écrire en VBA)
Copie/coller valeur du tableau
Selectionne les colonnes de titre du tableau
Balayage des colonnes (de 1 au nb de ligne de la sélection)
Si la cellule est vide alors la valeur de la cellule = valeur de la
cellule au dessus
Si tu as besoin d'aide pour l'écrire en VBA fais nous signe.
Sinon manuellement tu peux rajouter autant de colonne que tes titres
(Je supose que tes titre sont en A1 à A5 et que tu as inseré la
colonne F): et mettre la formule à partir de F2 à F5 en : Si(Estvide
(F2);F1;A1) puis copier valeur de la colonne F sur la colonne A .
@+
Rouch'
On 7 oct, 17:07, "Fab25" <fabrice.mag...@exco.fr> wrote:
Bonjour,
Je fais une synthèse de données par un Tableau Croisée Dynamique en VBA.
Jusque là tout va bien!
Ensuite je dois copier ce tableau dans une autre feuille par copie, mais
uniquement les valeurs
Seulement, comme je dois "triturer" ce tableau dans tous les sens
(dupliquer,supprimer, modifier lignes), il me faut toutes les
données(etiquettes de lignes) dans toutes les cellules du tableau copie r. Et
non pas comme le TCD (affichage hiérarchique), cellules vides.si même valeur
que ligne du dessus.
Avez-vous déjà fais ça en VBA? ou existe-t-il une procédure mirac le...
Une solution bruatle en VBA: (Je te donne le principe du raisonnement reste à l'écrire en VBA)
Copie/coller valeur du tableau Selectionne les colonnes de titre du tableau Balayage des colonnes (de 1 au nb de ligne de la sélection) Si la cellule est vide alors la valeur de la cellule = valeur de la cellule au dessus
Si tu as besoin d'aide pour l'écrire en VBA fais nous signe.
Sinon manuellement tu peux rajouter autant de colonne que tes titres (Je supose que tes titre sont en A1 à A5 et que tu as inseré la colonne F): et mettre la formule à partir de F2 à F5 en : Si(Estvide (F2);F1;A1) puis copier valeur de la colonne F sur la colonne A .
@+ Rouch'
On 7 oct, 17:07, "Fab25" wrote:
Bonjour,
Je fais une synthèse de données par un Tableau Croisée Dynamique en VBA. Jusque là tout va bien!
Ensuite je dois copier ce tableau dans une autre feuille par copie, mais uniquement les valeurs
Seulement, comme je dois "triturer" ce tableau dans tous les sens (dupliquer,supprimer, modifier lignes), il me faut toutes les données(etiquettes de lignes) dans toutes les cellules du tableau copie r. Et non pas comme le TCD (affichage hiérarchique), cellules vides.si même valeur que ligne du dessus.
Avez-vous déjà fais ça en VBA? ou existe-t-il une procédure mirac le...
En excel 2003 ou si' pas le choix en Excel 2007
merci d'avance
michdenis
Bonjour Fab25,
As-tu essayé quelque chose comme :
Feuil3 et Feuil4 ne sont pas le nom des onglets des feuilles mais la propriété "Name" des objets Feuille visible dans la fenêtre de l'éditeur de code, section ProjetVBA.
Si tu as plusieurs TDC dans la même feuille, tu dois remplacer le 1 du PivotTables(1) par le nom du pivottable dont tu veux copier les données afin de t'assurer que c'est les données du bon TDC que tu copieras.
'------------------------------- Sub test() Dim X As Variant X = Feuil3.PivotTables(1).TableRange2 Feuil4.Range("A1").Resize(UBound(X, 1), UBound(X, 2)) = X End Sub '-------------------------------
"Fab25" a écrit dans le message de groupe de discussion : uYnrj$ Bonjour,
Je fais une synthèse de données par un Tableau Croisée Dynamique en VBA. Jusque là tout va bien!
Ensuite je dois copier ce tableau dans une autre feuille par copie, mais uniquement les valeurs
Seulement, comme je dois "triturer" ce tableau dans tous les sens (dupliquer,supprimer, modifier lignes), il me faut toutes les données(etiquettes de lignes) dans toutes les cellules du tableau copier. Et non pas comme le TCD (affichage hiérarchique), cellules vides.si même valeur que ligne du dessus.
Avez-vous déjà fais ça en VBA? ou existe-t-il une procédure miracle...
En excel 2003 ou si' pas le choix en Excel 2007
merci d'avance
Bonjour Fab25,
As-tu essayé quelque chose comme :
Feuil3 et Feuil4 ne sont pas le nom des onglets des feuilles
mais la propriété "Name" des objets Feuille visible dans la
fenêtre de l'éditeur de code, section ProjetVBA.
Si tu as plusieurs TDC dans la même feuille, tu dois
remplacer le 1 du PivotTables(1) par le nom du pivottable
dont tu veux copier les données afin de t'assurer que c'est
les données du bon TDC que tu copieras.
'-------------------------------
Sub test()
Dim X As Variant
X = Feuil3.PivotTables(1).TableRange2
Feuil4.Range("A1").Resize(UBound(X, 1), UBound(X, 2)) = X
End Sub
'-------------------------------
"Fab25" <fabrice.magier@exco.fr> a écrit dans le message de groupe de discussion :
uYnrj$1RKHA.3876@TK2MSFTNGP06.phx.gbl...
Bonjour,
Je fais une synthèse de données par un Tableau Croisée Dynamique en VBA.
Jusque là tout va bien!
Ensuite je dois copier ce tableau dans une autre feuille par copie, mais
uniquement les valeurs
Seulement, comme je dois "triturer" ce tableau dans tous les sens
(dupliquer,supprimer, modifier lignes), il me faut toutes les
données(etiquettes de lignes) dans toutes les cellules du tableau copier. Et
non pas comme le TCD (affichage hiérarchique), cellules vides.si même valeur
que ligne du dessus.
Avez-vous déjà fais ça en VBA? ou existe-t-il une procédure miracle...
Feuil3 et Feuil4 ne sont pas le nom des onglets des feuilles mais la propriété "Name" des objets Feuille visible dans la fenêtre de l'éditeur de code, section ProjetVBA.
Si tu as plusieurs TDC dans la même feuille, tu dois remplacer le 1 du PivotTables(1) par le nom du pivottable dont tu veux copier les données afin de t'assurer que c'est les données du bon TDC que tu copieras.
'------------------------------- Sub test() Dim X As Variant X = Feuil3.PivotTables(1).TableRange2 Feuil4.Range("A1").Resize(UBound(X, 1), UBound(X, 2)) = X End Sub '-------------------------------
"Fab25" a écrit dans le message de groupe de discussion : uYnrj$ Bonjour,
Je fais une synthèse de données par un Tableau Croisée Dynamique en VBA. Jusque là tout va bien!
Ensuite je dois copier ce tableau dans une autre feuille par copie, mais uniquement les valeurs
Seulement, comme je dois "triturer" ce tableau dans tous les sens (dupliquer,supprimer, modifier lignes), il me faut toutes les données(etiquettes de lignes) dans toutes les cellules du tableau copier. Et non pas comme le TCD (affichage hiérarchique), cellules vides.si même valeur que ligne du dessus.
Avez-vous déjà fais ça en VBA? ou existe-t-il une procédure miracle...