[RESOLU] VBA Probleme de copie de feuille

Tuf69

XLDnaute Nouveau
--------------------------------------------------------------------------------

Bonjour à tous !
Voilà j'ai un souci quand je veux copier une feuille de mon classeur dans un nouveau classeur pour le rendre dispo à d'autres...

Bon en gros j'ai une feuille par semaine nommée S44 pour la semaine 44, et une feuille "Bon Cde" qui me permet d'éditer la commande de la semaine en cours.

Au début dans ma feuille bon de commande j'avais des formules en 'dur' , genre
='S44'!C39 pour récupérer dans mon bon de commande les valeurs de la semaine 44. ensuite un simple Sheets("Bon Cde").Copy me permettait de copier ma feuille "Bon Cde" pour l'envoyer à mes partenaires...

Mais comme chaque semaine j'étais obligé de modifier toutes les formules de mon bon de commande pour éditer la semaine suivante, j'ai voulu utiliser une cellule nommée 'SCde' pour ne pas ressaisir toutes les formules, mais juste changer la valeur de 'SCde'. Cela fonctionne très bien dans mon classeur. Mais après la copie toute mes cases de mon bon de commande affichent #REF
Dans le débogueur, il me semble comprendre que la formule fait référence a mon classeur original et ne le trouve pas. J'avais cru résoudre le problème en saisissant le nom de mon classeur dans les formules... genre :
=INDIRECT("[MonClasseur.xlsm]"& CELLULE("contenu";SCde)&"!"&"C39" )
alors si ca refonctionne bien chez moi, évidement ca ne fonctionne sur le PC d'une tierce personne ! (normal elle ne possède pas mon classeur original !)

C'est là que je fais appel a votre aide parce que je n'entrevoie plus aucune autre méthode pour me permettre de copier et distribuer cette feuille de synthèse des commande pour la semaine en cours...
On a bien tenté de m'aiguiller sur le collage spécial 'uniquement les valeurs' mais si j'ai seulement trouvé la fonction .PasteCopy !! Mais comme rien n'est collé...

En espérant avoir été suffisamment clair et en vous remerciant par avance de vos conseil
Cordialement
Christophe
 
Dernière édition:
G

Guest

Guest
Re : VBA Probleme de copie de feuille

Bonjour,

Ce serait plus simple avec un fichier exemple mais tu peux toujours essayer:
Code:
Sheets("Bon Cde").Copy
'Transformer toutes les formules en leur résultat = copier/collage spécial Valeur
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
'Suite pour envoyer la feuille

Ta feuille sera identique mais sans formule.

A+
 
Dernière modification par un modérateur:

Tuf69

XLDnaute Nouveau
Re : VBA Probleme de copie de feuille

Bonsoir et infiniment Merci !
que n'y avais-je pensé plutôt ? transformer la feuille après la copie plutôt qu'avant !!
Sinon,si j'ai bien compris le principe du collage spécial, en revanche, bien qu'elle fonctionne à merveille, j'ai du mal à interpréter le fonctionnement de ta formule !!
Mais bon ca fonctionne...
Un grand merci à toi et à ta vélocité !
Cordialement
christophe
 

Tuf69

XLDnaute Nouveau
Re : VBA Probleme de copie de feuille

Voila mon code final ! :)

Sheets("Bon Cde").Copy
' Permet d'afficher juste les valeurs sans les formules. Pratique pour lire cette feuille sur un autre PC ne possédant pas
' le classeur de travail. Un grand merci à Hasco sur le forum Excel Downloads

ActiveSheet.UsedRange.Cells.Value = ActiveSheet.UsedRange.Value
Sauvegarde = Application.GetSaveAsFilename(chemin & nomfichier, fileFilter:="Classeur Excel (*.xlsx), *.xlsx,Classeur Excel avec Macro (*.xlsm), *.xlsm,Classeur Excel 97-2003 (*.xls), *.xls")

If Sauvegarde <> False Then
ActiveWorkbook.SaveAs Filename:=Sauvegarde
ActiveWorkbook.Close
End If


Merci encore et désolé j'ai encore pas trouvé comment insérer un bout de code...
Cordialement
Christophe