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

Copie et Sauvegarde de fichier

  • Initiateur de la discussion Initiateur de la discussion benoa
  • 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 !

B

benoa

Guest
Bonjour,

J'ai un fichier tampon dont je souhaiterais faire une copie, ce fichier tampon est contenu dans un classeur, et la sauvegarde est contenu dans un autre classeur.

Je choisi de copier l'intégralité du fichier tampon, pour cela je stocke en variable la dernière ligne et la dernière colonne non vide. Je sélectionne de la cellule(1,1) jusqu'à la cellule(dernLign, derncolonne), je sélectionne la bonne feuille de sauvegarde, puis je colle le tout en A1.

Voici le code VBA :

Public Sub SauvegardeMensuelle()

Dim CeMois As String
CeMois = ActiveCell.Value

Dim DernLigne As Long
DernLigne = Range("A" & Rows.Count).End(xlUp).Row

Dim DernCol As Long
DernCol = Cells(1, Cells.Columns.Count).End(xlToLeft).Column

Dim Selection As Range
Set Selection = Sheets("MOI").Range(Cells(1, 1), Cells(DernLigne, DernCol)).Select


Set MonFichier = GetObject("c:\test.xls")
Set FeuilMoi = MonFichier.Sheets(CeMois)

FeuilMoi.Activate
ActiveSheet.Paste​

End Sub

Après Débogage, il y a une erreur 424, "objet manquent" à la ligne surligner. Avez-vous des idées quant à la résolution du problème?

De plus, est ce que les quatre dernières lignes vous semblent justes?

Merci à tous pour vos suggestions.
 
Re : Copie et Sauvegarde de fichier

Bonjour,

"selection" est un mot réservé vba... ne pas l'utiliser comme nom de variable ou de procédure ou autre... essaye comme ceci :
Code:
Dim s As Range
Set s = Sheets("MOI").Range(Cells(1, 1), Cells(DernLigne, DernCol))
bon après midi
@+
 
Re : Copie et Sauvegarde de fichier

Ok merci, par contre après pour sélectionner mon autre classeur, j'utilise :

Dim FeuilMoi As Worksheet
Set FeuilMoi = Workbooks("Sauvegarde.xls").Sheets(CeMois)

Le debogage m'indique encore une erreur '9', l'indice n'appartient pas à la sélection, qu'est ce que ça veut dire? N'y aurait il pas un autre moyen utilisant le chemin absolu pour retrouver le bon fichier de sauvegarde?

Cordialement
 
Re : Copie et Sauvegarde de fichier

J'ai vérifié le nom, ce n'est pas ça qui pose problème. Est ce que les deux fichier (tampons et Sauvegardes) doivent être placés dans un même dossier?
 
Re : Copie et Sauvegarde de fichier

Et au lieu de faire tout ca, ne pourrait-on pas simplifier ainsi? :

Private Sub Sauvegarde()
Var_Chemin = "D:Sauvegarde.xls"
Fichier1 = ActiveWorkbook.Name
Workbooks.Open Var_Chemin, 0, ReadOnly:=False
Fichier2 = ActiveWorkbook.Name
Workbooks(Fichier1).Sheets("Moi").Copy := Workbooks(Fichier2).Sheets("Cemois")​
End Sub
 
Re : Copie et Sauvegarde de fichier

Re,

test tu le verras vite... attention manque un \

Code:
Private Sub Sauvegarde() 
Var_Chemin = "D:\Sauvegarde.xls" 
Fichier1 = ActiveWorkbook.Name 
Workbooks.Open Var_Chemin, 0, ReadOnly:=False 
Fichier2 = ActiveWorkbook.Name 
Workbooks(Fichier1).Sheets("Moi").Copy := Workbooks(Fichier2).Sheets("Cemois") 
End Sub
 
Re : Copie et Sauvegarde de fichier

Bon ça ne marche pas. Est ce que vous auriez une idée simple pour sauvegarder un fichier dans un autre classeur déjà existant?

De

fichier = D:\tampon.xls
feuille = Moi

vers

fichier = D\Sauvegarde.xls
feuille = JUIN

Cordialement
 
Re : Copie et Sauvegarde de fichier

Re,

pour copier les cellules d'une feuille vers une autre :
Code:
Workbooks(Fichier1).Sheets("Moi").Cells.Copy _
    Destination:=Workbooks(Fichier2).Sheets("Cemois").Range("A1")
 
Re : Copie et Sauvegarde de fichier

Très bien, j'utilise donc la première solution, à savoir :

Public Sub ()

Dim CeMois As String
CeMois = ActiveCell.Value

Workbooks("Tampon.xls").Sheets("Moi").Copy _
after:=Workbooks("Sauvegarde.xls").Sheets(CeMois)

End Sub

Erreur '9' : indice n'appartient pas à la sélection (ici en gras)
 
Re : Copie et Sauvegarde de fichier

Ok ça marche pour moi aussi. Cependant, il me crée une nouvelle feuille alors que je voudrais qu'il l'insère dans la feuille intitulé 'CeMois'. Comment puis-je faire?

Cordialement
 
- 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

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