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

copier onglet

sancerre75

XLDnaute Nouveau
je souhaiterais copier un onglet dans un autre fichier excel mais je n'arrive pas à le faire. En fait mon fichier source est plein de formule et ce qui m'intéresse ce n'est que les données et le format. Quand je recopie mon onglet, les liaisons des formules sont plus bonnes et des ###### apparaissent sur toutes les lignes. Quelqu'un sait comment faire pour copier un onglet dans ma situation. Merci par avance.
 

Brigitte

XLDnaute Barbatruc
Re : copier onglet

Bonjour,

Associe la copie de ton onglet à un copier/collage spécial, peut être (faute de mieux).

Comment procèdes tu pour ta copie ?

- clic droit sur onglet à copier
- cocher "copie"
- choisir le classeur (nouveau, celui ci ou un autre que tu auras pris soin d'ouvrir avant)
- choisir la position (avant telle feuille, après telle feuille)
- ok

Je viens d'essayer, ca copie bien tout... avec liaisons si formules. Donc ensuite tu sélectionnes tout avant de fermer le classeur sources (tu te mets à l'intersection lignes et colonnes) et tu fais édition copier/collage spécial valeurs... et ca devrait le faire. SURTOUT, garde ouvert le classeur source avant la fin du collage spécial valeurs.

Si tu dois le faire souvent, il faudrait automatiser par une petite macro (enregistreur de macro suffisant pour ce genre de chose).
 
Dernière édition:

Brigitte

XLDnaute Barbatruc
Re : copier onglet

Bonjour Minick, le fil,

Décidément, on se retrouve... Attention dans ta procédure décrite, tu dis : déplace ton onglet, je crois que sancerre veut COPIER, pas déplacer... Faut penser à cocher "copie" quand on fait clic droit sur onglet et déplacer/copier.

Pour la macro de copier/collage special valeurs (si nécessaire d'automatiser) :


A coller dans un module. Pour cela, faire ALT/F11, l'éditeur de VBA (macros) s'ouvre. Tu fais insertion module (vérifie que tu es bien à gauche dans TON CLASSEUR), et tu copies colles ce code en changeant les plages, et nom de feuilles.
Pour exécuter la macro, soit tu cliques dans la barre d'outils macros sur la petite flèche (exécuter) ; si la barre outils est pas présente : affichage/barres outils/macros.

Soit tu fais un bouton dans ta feuille... on t'expliquera... pour l'instant on attend ton besoin.

Essaie.

Ci-joint un exemple avec un bouton "copier feuilles avec valeur".
 

Pièces jointes

  • sancerre.xls
    23.5 KB · Affichages: 121
  • sancerre.xls
    23.5 KB · Affichages: 120
  • sancerre.xls
    23.5 KB · Affichages: 117
Dernière édition:

Brigitte

XLDnaute Barbatruc
Re : copier onglet

Dans le fichier SOURCE... Regarde mon exemple de classeur source. Ouvre le et fais ALT/F11, à gauche, dans l'éditeur vba (macros) qui s'ouvre, tu as plein de choses, clique sur le classeur "sancerre" et tu verras module 1 contenant la macro exemple.

Le bouton pointe vers cette macro, clique droit dessus, tu verras.

Et aussi souvent que tu feras, dans CE classeur source, exécuter la macro "copier valeurs" ou bien aussi souvent que tu cliqueras sur le gros bouton gris "copier feuille ailleurs" (qu'on peut nommer autrement bien sûr), ca dupliquera à l'identique (formats, valeurs) ta feuille dans un nouveau classeur qu'il t'appartiendra alors de nommer pour le garder (plus aucune liaison dedans en revanche, on est bien d'accord : plutot une sorte de sauvegarde à un moment donné).

Copie écran : C'est à cette macro copievaleurs qu'est associé le bouton gris. Adapter plages et nom feuille.

 

Pièces jointes

  • Capture copie.jpg
    43.6 KB · Affichages: 250
  • Capture copie.jpg
    43.6 KB · Affichages: 246
Dernière édition:

Brigitte

XLDnaute Barbatruc
Re : copier onglet

Sancerre,

Deux solutions : soit je réexplique mieux, soit si tu as msn, je t'explique sur msn.

1. explication meilleure (j'espère)

Dans ton classeur SOURCE (duquel tu veux copier "souvent" car si une seule fois, pas besoin de macro, une feuille ailleurs, si j'ai bien compris), tu appuies sur ALT et F11 en même temps.

Une fois ca fait, ca doit t'ouvrir une fenêtre de l'éditeur vba (macros) comme ma capture écran.

A gauche tu as une liste de classeurs ouverts... tu cliques sur ton classeur (ou mon exemple "sancerre" pour voir).

En haut tu fais Insertion/module. Tu y copies / colles le code que j'ai mis ci-dessous (ou pris dans mon classeur).

Tu changes la plage de référence : moi j'ai mis A1 à B40, tu mets toute ta plage.

Tu changes le nom de ta feuille : moi j'ai mis Feuil1 ; aux 2 endroits attention.

Tu fermes l'éditeur VBA avec la croix à droite en haut.

Tu reviens donc dans le classeur.

Tu fais Outils/macros/ tu cherches la macro "copievaleur", tu fais exécuter...

Si ca te convient, si ca te plait... on ira plus loin (on t'apprendra à mettre le bouton "gris" plus facile d'utilisation que outils/macros/exécuter).

Tu reviens nous dire ?

2. Sur msn, envoie moi ton adresse par message privé sur ce forum.
 

sancerre75

XLDnaute Nouveau
Re : copier onglet

ok c'est bon j'ai réussit à copier par contre la mise en page n'est pas la peine.
Comnent je peux faire si je veux copier plusieurs onglets du même fichier dans un autre.(je sais je suis lourd)...
 

Brigitte

XLDnaute Barbatruc
Re : copier onglet

Et bien tu fais le même code plusieurs fois de suite... dans chaque feuille ou alors il faut associer ensuite les macros... je ne sais pas encore faire cela...

que veux tu dire par là :

par contre la mise en page n'est pas la peine.

Tu semblais dire que tu voulais les formats...
 

Minick

XLDnaute Impliqué
Re : copier onglet

Re,

Sur l'exemple de Brigitte avec copie de la feuille en premier puis copier/collage valeur en second
Code:
Sub CopieValeurs()
    'Copie de la feuille source
    Sheets("Feuil1").Copy
    
    'Copie de l'ensemble des cellules de la feuille destination
    Cells.Copy
    'Collage en valeur sur elle meme ( en valeurs )
    Cells.PasteSpecial Paste:=xlPasteValues

    'Annulation du copier
    Application.CutCopyMode = False
End Sub

++
Minick
 

Discussions similaires

Réponses
4
Affichages
314
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…