VBA - copier/coller feuilles Excel en valeurs

Bonjour a tous :)

Je ne suis pas très douée en vba mais je persiste !

J'ai besoin de faire un copier/coller valeurs de plusieurs feuilles d'un même classeur vers un nouveau classeur excel.

Ce bout de code fonctionnait dans certains fichiers mais la j'ai un message d'erreur sur le "cells.select" --> vba m'affiche "la méthode select de la classe range a échoué"

Voici le code :

Application.DisplayAlerts = False

Sheets(Array("Achats", "Ventes", "Suivi")).Select
Sheets("Suivi").Activate
Sheets(Array("Achats", "Ventes", "Suivi")).Copy
Sheets(Array("Achats", "Ventes", "Suivi")).Select
Sheets("Achats").Activate
Cells.Select
Range("AG28").Activate
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False

Comment puis-je remédier à ça ?

Merci d'avance :)

Bonsoir, je vais essayer d'apporter un élément de réponse, je pense que tu devrais effectuer les copies des différentes feuilles les unes après les autres.

Je ne sais pas s'il est possible de sélectionner des plages dans plusieurs feuilles en même temps (les noms des cellules étant les mêmes : A1 ; A2 ; A3 ; ...).

Selon moi il est possible que la sélection échoue à cause de ceci.

Bonne soirée :) Nathan

Bonjour,

Je pense que ce code devrait correspondre à votre besoin.

sub CopierCollerValeursOnglets ()

Dim Wb as Workbook
Dim Ws as Worksheet
dim NomNouveauWb$

ThisWorkbook.Sheets(Array("Achats" ,"Ventes" , "Suivi")).Copy  'copie des onglets dans nouveau classeur
Set Wb = ActiveWorkbook 'Variable nouveau classeur

For each Ws in Wb 'pour chaque onglet de Wb
    With Ws
        .Cells.copy 'Copier tout
        .Cells(1,1).PasteSpecial Paste:=xlPasteValues 'Collage special valeurs
        '.Cells(1,1).PasteSpecial Paste:=xlPasteFormats
    End with
Next Ws

NomNouveauWb = thisworkbook.path &"\"&"Copie onglets HA VT SUIVI.xlsx" 'Chemin du nouveau classeur
Wb.SaveAs Filename:=NomNouveauWb 'Sauvegarde
Wb.close true 'Fermeture

ThisWorkbook.activate 'Réactivation classeur source

Msgbox "Copie de vos onglets achevée." & VbCrLf & VbCrLf & "Chemin : " & NomNouveauWb

end sub

Il est à personnaliser avec selon vos souhaits.

Cordialement,

Rechercher des sujets similaires à "vba copier coller feuilles valeurs"