archivage d'une feuille dans un autre classeur

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

JPS28

XLDnaute Occasionnel
Bonjour le forum.
Je viens vers vous pour résoudre un petit problème j'ai adapté cette petite appli pour archiver une copie d'une feuille nommée "Monte" d'un classeur pour l'archiver dans un dossier nommé "Archive feuilles de monte" et quand je clic sur mon bouton elle ne va pas dans ce dossier mais créé un "classeur 1" "classeur 2" etc... Que dois-je faire pour que les feuilles aillent dans le dossier?

Voisi le texte:

Sauve = "C:\Users\Bureau\Documents\Monte\archivage\"
Worksheets("Monte").Copy

With ActiveWorkbook
.SaveAs Sauve & Feuil3.Range("A1").Value & Format(Now, "DD-MM-YYYY-") & " .xls"
.Close
End With
Merci cordialement
JPS
 
Re : archivage d'une feuille dans un autre classeur

Bonsoir à tous, sinon Bonjour.
Malgré la défaite de Lorient, je trouve encore la force!!! 😡

Dis moi, JPS28, sans vouloir te titiller les grassets ni trop raccourcir les étrivières. 🙂

Tu es dans un classeur Maître,
et tu veux copier la Feuille "x" d'un Classeur "1" dans un Classeur "2" ???

Quand tu dis:
"pour l'archiver dans un dossier nommé "Archive feuilles de monte""
Ne veux-tu pas dire: "Dans un Classeur" ?
Sinon, il est possible de créer un Nouveau Dossier qq part et d'y mettre
un Nouveau Classeur possédant la Feuille copiée.

A te lire.

Yann

Saint Taxes priez pour nous.
Par ces temps qui courent,
on en a bien besoin! 😱
 
Re : archivage d'une feuille dans un autre classeur

Re Bonsoir jp14, YANN-56, Staple1600, le forum.
Je m'aperçois qu'il y a des personnes qui ont des motions d'équitations.
Classeur ou dossier peu importe pour moi je préférerais un dossier mais je prends se qui peu fonctionner du moment que je puisse l'archiver en preuve que les cavaliers ont bien monté au date de la feuille de monte tout cela pour éviter tout qui pro quo lors de réclamations et il y en a plus que l'on ne croit.
Merci,cordialement
JPS
 
Re : archivage d'une feuille dans un autre classeur

Bonjour JPS28,YANN-56, Staple1600

Ci dessous le code modifié, j'avais oublié de sauvegarder le classeur.
J'ai rajouté un message pour éviter l'erreur 1004.

Code:
Sub sauvegarde()
Dim Sh As Shape
Dim nom As String
Dim sheet1 As Worksheet
Select Case MsgBox("Etes vour sur de vouloir faire cette opération, " _
                   & vbCrLf & "la feuille  monte va être effacée après l'opération" _
                   & vbCrLf & "" _
                   & vbCrLf & "" _
                   , vbYesNo Or vbExclamation Or vbDefaultButton1, Application.Name)

    Case vbYes

    Case vbNo
        Exit Sub
End Select

    Application.DisplayAlerts = False
nom = Day(Now) & "_" & Month(Now) & "_" & Year(Now)
For Each sheet1 In Worksheets
    If sheet1.Name = nom Then
        Select Case MsgBox("" _
            & vbCrLf & "" _
            & vbCrLf & "La feuille : " _
            & vbCrLf & "existe déja dans le classeur, vous devez la supprimer avant de relancer la procédure." _
            & vbCrLf & "" _
            & vbCrLf & "Oui : suppression de la feuille" _
            & vbCrLf & "" _
            & vbCrLf & "" _
            & vbCrLf & "" _
            , vbYesNo Or vbExclamation Or vbDefaultButton1, Application.Name)

                Case vbYes
                        Sheets(nom).Delete
                        
                Case vbNo
                        Exit Sub
        End Select
End If
Next sheet1

    Sheets("Monte").Copy After:=Sheets(3)
    ActiveSheet.Name = nom
    For Each Sh In ActiveSheet.Shapes
           Sh.Delete
    Next Sh

Workbooks.Open Filename:="Archive feuilles de monte.xls"
Workbooks("FormCavalierCheval5.xls").Sheets(nom).Copy Before:=Workbooks("Archive feuilles de monte.xls"). _
        Sheets(1)

ActiveWorkbook.Save
ActiveWorkbook.Close
Sheets("monte").Activate
Sheets(nom).Delete
Sheets("monte").Range("B4:AW56").ClearContents ' à modifier 
Application.DisplayAlerts = True

End Sub

A tester

JP
 
Re : archivage d'une feuille dans un autre classeur

Bonjour jp14, YANN-56, Staple1600, le forum.
Je suis désolé pour jp14 mais j'ai toujours cette erreur 1004 et la feuille de monte s'archive toujours a la suite du classeur "FormCavalierCheval" (ajout d'un onglet daté) ce qui est très bien mais non pas dans celui archivage ce qui serai beaucoup mieux.
Merci, cordialement.
JPS
 
Re : archivage d'une feuille dans un autre classeur

Bonjour

Le fichier de sauvegarde porte le nom : "Archive feuilles de monte.xls", il se trouve dans le même répertoire que le fichier "FormCavalierCheval5.xls".
Pour trouver l'erreur il faut mettre un point d'arrêt (touche f9) sur le code
Code:
Workbooks("FormCavalierCheval5.xls").Sheets(nom).Copy Before:=Workbooks("Archive feuilles de monte.xls"). _
        Sheets(1)
et quand la procédure s'arrête vérifier si le fichier est ouvert,si la feuille copie de "monte" est bien crée sans les boutons, avec comme nom d'onglet la date du jour.
Puis utiliser la touche f8 pour faire évoluer la procédure.

JP
 
Re : archivage d'une feuille dans un autre classeur

Bonjour jp14, YANN-56, Staple1600, le forum.
Je joint les fichiers fait peut être que vous trouverez l'erreur surement même je ne doute en aucun cas de votre savoir en se domaine pour ma part j'ai fais "f8""f9" le point marron est apparu mais aucune évolution j'ai baladé mon curseur sur les lignes surligner et rien de rien je me demande si j'ai un ordinateur ordinaire ou si mon Excel ne viens pas d'une décharge pour ma part j'ai beau essayer faire des efforts passé du temps a comprendre mais rien. Je suis allé sur le cite de Boisgontier au quel je me réfère un peu mais toujours rien. J’ai toujours cette erreur et cette feuille qui ne veux pas allée dans archive feuille de monte.
Enfin voici les fichers.
Merci de votre aide.
Cordialement.
JPS
 

Pièces jointes

Re : archivage d'une feuille dans un autre classeur

Bonjour

Ci joint le fichier modifié. J'ai recopié la procédure du post précédant et modifié la macro associé au bouton "sauvegarde".

A tester

JP
 

Pièces jointes

Dernière édition:
Re : archivage d'une feuille dans un autre classeur

Re jp14, YANN-56, Staple1600, le forum.
Désolé de dire que cela ne fonctionne toujours pas et que si cela est impossible je laisse tomber j'ai même essayer après de multiples tentatives le code Staple1600 aider par YANN-56 et chez moi j'ai un message d'une croix dans un rond rouge suivi du chiffre 400 toutes les tentatives échoues chez moi je vous remercies vivement d'essayer de m'aider mais moi même je ne comprend pas déjà pas grand chose mais alors là je patauge et ne s'ais pas d'ou cela viens puisse que vous testé chez vous et cela fonctionne je dois avoir des ondes négative pour les macros. J’aimerais savoir ci d'autres personnes ont essayé vos codes et si cela fonctionne chez eux.
Merci encore beaucoup, cordialement.
JPS
 
Dernière édition:
Re : archivage d'une feuille dans un autre classeur

Re jp14, YANN-56, Staple1600, le forum.
Est ce que cela peut aider la phase qui beug est en rouge et j'ai essayé beaucoup de choses sans succès
Merci énormément de ta patience.
Cordialement.
JPS.




Sub afficheform()
UserForm1a.Show 0
End Sub
Sub masquer()
Dim i As Long
Dim dl1 As Long ' dernière ligne
Dim nomfeuille1 As String
nomfeuille1 = ActiveSheet.Name
With Sheets(nomfeuille1)
'
.Columns("A:Z").EntireColumn.Hidden = False
For i = 20 To 2 Step -1

dl1 = .Cells(.Rows.Count, i).End(xlUp).Row
If dl1 = 3 Then
Columns(i).EntireColumn.Hidden = True
End If
Next i
End With
End Sub
Sub sauvegarde1()
Dim Sh As Shape
Dim nom As String
Select Case MsgBox("Etes vour sur de vouloir faire cette opération, " _
& vbCrLf & "la feuille va être supprimé" _
& vbCrLf & "" _
& vbCrLf & "" _
, vbYesNo Or vbExclamation Or vbDefaultButton1, Application.Name)

Case vbYes

Case vbNo
Exit Sub
End Select
Application.DisplayAlerts = False
nom = Day(Now) & "_" & Month(Now) & "_" & Year(Now)
Sheets("Monte").Copy After:=Sheets(3)
ActiveSheet.Name = nom
For Each Sh In ActiveSheet.Shapes
Sh.Delete
Next Sh

Workbooks.Open Filename:="Archive feuilles de monte.xls"
Workbooks("FormCavalierCheval1.xls").Sheets(nom).Copy Before:=Workbooks("Archive feuilles de monte.xls"). _
Sheets(1)
'Sheets(n).Name = "29_01_20010"
ActiveWorkbook.Close
Sheets("monte").Activate
Sheets(nom).Delete
Sheets("monte").Range("B4:AW56").ClearContents
Application.DisplayAlerts = True
End Sub

Sub sauvegarde()
Dim Sh As Shape
Dim nom As String
Dim sheet1 As Worksheet
Select Case MsgBox("Etes vour sur de vouloir faire cette opération, " _
& vbCrLf & "la feuille monte va être effacée après l'opération" _
& vbCrLf & "" _
& vbCrLf & "" _
, vbYesNo Or vbExclamation Or vbDefaultButton1, Application.Name)

Case vbYes

Case vbNo
Exit Sub
End Select

Application.DisplayAlerts = False
nom = Day(Now) & "_" & Month(Now) & "_" & Year(Now)
For Each sheet1 In Worksheets
If sheet1.Name = nom Then
Select Case MsgBox("" _
& vbCrLf & "" _
& vbCrLf & "La feuille : " _
& vbCrLf & "existe déja dans le classeur, vous devez la supprimer avant de relancer la procédure." _
& vbCrLf & "" _
& vbCrLf & "Oui : suppression de la feuille" _
& vbCrLf & "" _
& vbCrLf & "" _
& vbCrLf & "" _
, vbYesNo Or vbExclamation Or vbDefaultButton1, Application.Name)

Case vbYes
Sheets(nom).Delete

Case vbNo
Exit Sub
End Select
End If
Next sheet1

Sheets("Monte").Copy After:=Sheets(3)
ActiveSheet.Name = nom
For Each Sh In ActiveSheet.Shapes
Sh.Delete
Next Sh

Workbooks.Open Filename:="Archive feuilles de monte.xls"Workbooks("FormCavalierCheval1.xls").Sheets(nom).Copy Before:=Workbooks("Archive feuilles de monte.xls"). _
Sheets(1)

ActiveWorkbook.Save
ActiveWorkbook.Close
Sheets("monte").Activate
Sheets(nom).Delete
Sheets("monte").Range("B4:AW56").ClearContents ' à modifier
Application.DisplayAlerts = True

End Sub
 
Re : archivage d'une feuille dans un autre classeur

Bonjour
Ce code me semble bizarre
Code:
Workbooks.Open Filename:="Archive feuilles de monte[COLOR="Red"].xls"Workbooks[/COLOR]("FormCavalierCheval1.xls").Sheets(nom)[COLOR="Red"].C opy Bef[/COLOR]ore:=Workbooks("Archive feuilles de monte.xls"). _
Sheets(1)

Il faudrait

Code:
Workbooks.Open Filename:="Archive feuilles de monte.xls"

Workbooks("FormCavalierCheval1.xls").Sheets(nom).Copy Before:=Workbooks("Archive feuilles de monte.xls"). _
        Sheets(1)


Il faudrait tester le fichier joint au post précédant en supprimant la feuille avec la date, et en lançant la macro à la main, se positionner dans la macro et appuyer sur f8.

JP
 
Dernière édition:
Re : archivage d'une feuille dans un autre classeur

Re
Je vais essayer de supprimer cette ligne mais pour l'ouverture du fichier j'ai essayé ouvert ou fermé cela n'a rien changé la feuille a archivée a toujours été dans FormCavalierCheval et non dans le fichier Archive feuilles de monte.
JPS.
 
Re : archivage d'une feuille dans un autre classeur

Bonsoir

J'en perd mon latin.
Je n'ai pas de problème tout se passe bien.
Il faudrait vérifier s'il n'y a pas un problème dans le nom du fichier de destination, un espace, ou ....
Dernier essai
En ayant activé l'enregistreur de macro
Ouvrir à la main le fichier de destination
Se positionner sur la feuille avec pour onglet la date
Se positionner sur le nom de l'onglet clic droit.
Voir images
Une fois la copie terminée
fermer le premier fichier
Arrêter la macro



JP
 

Pièces jointes

  • img1.jpg
    img1.jpg
    31.1 KB · Affichages: 55
  • img1.jpg
    img1.jpg
    31.1 KB · Affichages: 65
  • img1.jpg
    img1.jpg
    31.1 KB · Affichages: 56
  • img2.jpg
    img2.jpg
    34.2 KB · Affichages: 49
  • img2.jpg
    img2.jpg
    34.2 KB · Affichages: 53
  • img2.jpg
    img2.jpg
    34.2 KB · Affichages: 51
- 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

Discussions similaires

Retour