Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Copie d'une liste à partir d'une table pivot

  • Initiateur de la discussion Initiateur de la discussion rmanal
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

R

rmanal

Guest
Bonjour,

j'ai une table pivot un peu comme celle ci:
NOM AUTRE
Toto xxx
yyyy
Titi zzzz
etc

je cherche à copier automatiquement la colonne "NOM" dans une autre feuille excel, sans les blancs: comment puis-je faire?

Merci d'avance
Rmanal
 
Re : Copie d'une liste à partir d'une table pivot

Super merci.
Deux points:
1/ n'est-il pas possible de faire la même chose uniquement avec les fonctions de l'interface d'Excel?

2/ Pour comprendre un peu le code:
Sub Copie()
Application.ScreenUpdating = False => pour pas perdre de temps d'exécution j'imagine
Columns("A:A").Select
Selection.Copy
Sheets("Copie").Select
Columns("A:A").Select
ActiveSheet.Paste
Sheets("Base").Select
Application.CutCopyMode = False => intérêt?
Range("E2").Select => intérêt?


Sheets("Copie").Select
Columns("A:A").Select
Selection.SpecialCells(xlCellTypeBlanks).Select => très fort ;-)
Application.CommandBars("Selection and Visibility").Visible = False => pas compris?
Selection.Delete Shift:=xlUp
Range("B1").Select
Application.ScreenUpdating = True
End Sub

Merci encore pour votre aide
 
Re : Copie d'une liste à partir d'une table pivot

Re-bonjour,

La macro “Copie” n’a rien de bien professionnel. Elle est réalisée grâce à l’enregistreur.

N’ayant, moi non plus, rien de professionnel en VBA, j’espère que des yeux bienveillants 😱 apporteront les précisions et corrections éventuellement nécessaires aux explications que je vais tenter de fournir ci-après.

1/ n'est-il pas possible de faire la même chose uniquement avec les fonctions de l'interface d'Excel?

Je l’ignore 😕.

Application.ScreenUpdating = False => pour pas perdre de temps d'exécution j'imagine

Désactive la visualisation des changements opérés par la macro.

Application.CutCopyMode = False => intérêt?

Désactive les fonctions de copie – collage

Application.CommandBars("Selection and Visibility").Visible = False => pas compris?

Cette ligne peut être supprimée.

Bonne continuation 🙂.
 
Re : Copie d'une liste à partir d'une table pivot

Bonjour rmanal, Bonjour 00 😉

n'est-il pas possible de faire la même chose uniquement avec les fonctions de l'interface d'Excel?
Qu'est-ce que ça veut dire ?
Par formule
En faisant un copier-coller à la main ? Si ça, il suffit de retraduire en action le code fourni par 00, dis-nous ce que tu ne sais pas faire
Le code peut être un peu raccourcis pour éviter les Select, mais sinon je ne vois pas quoi lui reprocher...

Code:
Sub Copie()
Application.ScreenUpdating = False
    Columns("A:A").Copy Sheets("Copie").Range("A1")
    Application.CutCopyMode = False
    Sheets("Copie").Columns("A:A").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
Application.ScreenUpdating = True
End Sub

pas testé
 
Re : Copie d'une liste à partir d'une table pivot

Mes questions dans le texte du code c'était pour comprendre la signification et le but des fonctions, au cas où je doive les réutiliser. Notamment quelle est l'utilité de la ligne Application.CutCopyMode = False?

sinon mon but est de faire la même chose par formule si c'est possible?

MErci pour votre aide.
 
Re : Copie d'une liste à partir d'une table pivot

Bonjour rmanal, le Fil, le Forum,

Mes questions dans le texte du code c'était pour comprendre la signification et le but des fonctions, au cas où je doive les réutiliser.

Oui, rmanal, il est indispensable de comprendre afin de pouvoir, si nécessaire, reproduire et / ou modifier.

sinon mon but est de faire la même chose par formule si c'est possible?

Là, malheureusement, je ne peux répondre 😱.

Bon courage et bonne continuation 🙂.
 
Re : Copie d'une liste à partir d'une table pivot

Bonjour rmanal, Bonjour 00,

le code

Application.CutCopyMode = False
équivaut à l'appui sur la touche Echap du clavier après avoir fait un Copier/Coller dans Excel
Si tu n'appuies pas sur Echap, les cellules copiées restent en mémoire (entourées de pointillés dans la feuille de calcul)
Si tu quittes excel sans Appuyer sur Echap, il te mets un message en demandant s'il faut conserver les données dans le Presse-papiers, etc...
C'est pour éviter ces désagréments qu'on vide la presse-papier avec cette ligne

sinon mon but est de faire la même chose par formule si c'est possible?
en A2 de la feuille Copie

Code:
=DECALER(Base!$A$1;EQUIV(PETITE.VALEUR(SI(Base!$A$2:$A$1000<>"";LIGNE(Base!$A$2:$A$1000));LIGNE()-1);SI(Base!$A$2:$A$1000<>"";LIGNE(Base!$A$2:$A$1000));0);0)
à valider par Ctrl+Maj+Entrée
puis à recopier vers le bas
 
Re : Copie d'une liste à partir d'une table pivot

Bonjour,

je recolle un peu à mon problème, désolé pour le "trou". Merci pour vos réponses: serait-il possible de la traduire en commande Anglaise? J'ai essayé mais j'ai le message d'erreur "#NAME".
=OFFSET($B$4,MATCH(SMALL(IF($B$2:$B$1000<>"",LINE($B$2:$B$1000)),LINE()-1),IF($B$2:$B$1000<>"",LINE($B$2:$B$1000)),0),0)
 
Re : Copie d'une liste à partir d'une table pivot

Ouf ca y est j'au réussi à transformer la formule.
Par contre tototiti2008 ca ne fonctionne pas du tout, voir fichier ci-joint.
 

Pièces jointes

Re : Copie d'une liste à partir d'une table pivot

Bonjour à tous,

à tester en D1

Code:
=DECALER($B$1;EQUIV(PETITE.VALEUR(SI($B$1:$B$1000<>"";LIGNE($B$1:$B$1000));LIGNE());SI($B$1:$B$1000<>"";LIGNE($B$1:$B$1000));0)-1;0)

à valider par Ctrl+Maj+Entrée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…