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

Modifier ce code pour enregistrer seulement ma feuille active

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

amauryde

XLDnaute Occasionnel
😡

Bonjour à tous,

J'essaye tant bien que mal de modifier ce code qui enregistre tout mon document pour enregistrer seulement ma feuille active dans le même répertoire que mon fichier Excel

Public Sub GuardarProveedor() 'copie sauvegarde feuille
Dim Nom As String
Nom = [B26].Value & "_" & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & "_" & Hour(Time) & "h" & Minute(Time) & "-" & ActiveWorkbook.Name

ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\" & Nom
rep = MsgBox("El reporte del proveedor ha sido guardado en: " & Nom, vbYes + vbInformation, "Guardar el reporte")
End Sub

PS: B26 est une cellule de ma feuille active

Merci d'avance pour votre aide
 
Re : Modifier ce code pour enregistrer seulement ma feuille active

Re,

Exactement toutes les 5 minutes ou on attend que l'utilisateur sélectionne une cellule ?
sur le principe de la sélection :

en haut d'un module :

Code:
Public Temps as Date

dans Thisworkbook :

Code:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Now > Temps Then
    Temps = Now + TimeValue("00:05:00")
    Application.OnTime Temps, "EnregistrerFichier"
End If
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    Application.OnTime Temps, "EnregistrerFichier", , False
    On Error GoTo 0
End Sub
 
Re : Modifier ce code pour enregistrer seulement ma feuille active

Non exactement toutes les 5 minutes, en quelques sorte pour faire une sauvegarde si on a une panne importante.

Sais tu également, stp, comment je peux traduire ceci dans mon enregistrement:ActiveWorkbook.SaveCopyAs ActiveWorkbook & "\" & "Grabacion automatica".Path & Nom.xlsm

Pour te donne une idée: j'ai un dossier où il y a mon fichier excel et un autre dossier "grabacion automatico" et j'aimerai enregistrer la sauvegarde dans le dossier "grabacion automatico". Sans passer par C:....\..\..
 
Re : Modifier ce code pour enregistrer seulement ma feuille active

Re amuryde,

Tu trouveras tous les renseignements utiles dans le lien ci-dessous :

Tutoriels : myDearFriend! Excel Pages

Partant de ce dosument, tu peux saisir dans un module de code standard les lignes suivantes :

Code:
Option Explicit
Dim Tps As Date
 
Sub Chrono()
    'Programmation de l'évènement toutes les secondes
    Tps = Now + TimeValue("00:05:00")
    Application.OnTime Tps, "Tempo"
    EnregistrerFichier ' appelle la macro d'enregistrement
End Sub
 
Sub StopChrono()
    On Error Resume Next
    'Stopper la gestion de l'évènement OnTime en cours
    Application.OnTime Tps, "Tempo", , False
End Sub

Et pour lancer le chrono à l'ouverture du fichier et l'arrêter à la fermeture, dans le module ThisWorkbook :

Code:
Option Explicit
 
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    StopChrono
End Sub

Private Sub Workbook_Open()
    Chrono
End Sub

Espérant avoir aidé.

Cordialement.
 
Dernière édition:
- 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

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