problème de sauvegarde avec VBA 2007
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

problème de sauvegarde avec VBA 2007



  1. #1
    foudefoot

    problème de sauvegarde avec VBA 2007


    ------

    Bonjour à tous,
    Je veux réaliser une macro qui effectue une sauvegarde du classeur quand on clique sur le bouton approprié, mais j'ai un message d'erreur. Les 2 prémiers points sont vérifiés et tout est bon. Je pense que mon erreur est sur l'écriture du chemin ou du nom du fichier. je voudrais que ce fichier se sauvegrade avec le même nom et pour incrémentation la date du jour, ex:
    - sauvegarde 03.11.2011
    - sauvegarde 04.11.2011
    Voilà, j'espère avoir été assez clair, quelqu'un peut-il m'aider?
    merci à tous d'avance
    Denis

    -----

  2. #2
    foudefoot

    Re : problème de sauvegarde avec VBA 2007

    Citation Envoyé par foudefoot Voir le message
    Bonjour à tous,
    Je veux réaliser une macro qui effectue une sauvegarde du classeur quand on clique sur le bouton approprié, mais j'ai un message d'erreur. Les 2 prémiers points sont vérifiés et tout est bon. Je pense que mon erreur est sur l'écriture du chemin ou du nom du fichier. je voudrais que ce fichier se sauvegrade avec le même nom et pour incrémentation la date du jour, ex:
    - sauvegarde 03.11.2011
    - sauvegarde 04.11.2011
    Voilà, j'espère avoir été assez clair, quelqu'un peut-il m'aider?
    merci à tous d'avance
    Denis
    désolé, je m'aperçoit que j'ai oublié de mettre les lignes de programme:

    Code:
    Dim chemin As String, nomfichier As Date
    Sub sauvegarde()
    chemin = "F:\save\"
    nomfichier = Sheets(1).Range("e2").Value
    ActiveWorkbook.SaveAs Filename:=chemin & nomfichier & ".xls"
    End Sub
    Encore merci d'avance pour vos réponses.
    denis
    Dernière modification par yoda1234 ; 03/11/2011 à 09h54.

  3. #3
    Dormeur74

    Re : problème de sauvegarde avec VBA 2007

    Très mauvaise idée que le mélange sous VBA de variables String et Date.
    Les dates sont stockées dans une variable numérique à virgule flottante sur 64 bits (IEEE754). La partie entière représente la date et la partie décimale l'heure. il est indispensable que tu récupères ces deux valeurs sous forme de chaînes de caractères avant d'en faire un nom de fichier qui tienne la route. Si tu rames, reviens.

  4. #4
    Dormeur74

    Re : problème de sauvegarde avec VBA 2007

    Tiens, étudie ce code :

    Code:
    Option Explicit
    
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      Dim Annee As String
      Dim Mois As String
      Dim Jour As String
      Dim Heure As String
      Dim Minute As String
      
      Dim FullSaveName As String
      
      FullSaveName = "F:\save\sauvegarde"
      
      ' Dès que l'on clique dans une cellule de la feuille, le groupe date-heure est mis à jour dans la cellule E2.
      Range("E2") = Now ' Prends le format date-heure-minute
      
      Jour = Mid(Range("E2"), 1, 2)
      Mois = Mid(Range("E2"), 4, 2)
      Annee = Mid(Range("E2"), 7, 4)
      Heure = Mid(Range("E2"), 9, 2)
      Minute = Mid(Range("E2"), 15, 2)
      FullSaveName = FullSaveName & Annee & Mois & Jour & Heure & Minute & ".xls"
      
      MsgBox FullSaveName ' Tu vois ce que tu enregistres. A toi de finir.
    End Sub

  5. A voir en vidéo sur Futura
  6. #5
    foudefoot

    Re : problème de sauvegarde avec VBA 2007

    Citation Envoyé par Dormeur74 Voir le message
    Tiens, étudie ce code :

    Code:
    Option Explicit
    
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      Dim Annee As String
      Dim Mois As String
      Dim Jour As String
      Dim Heure As String
      Dim Minute As String
      
      Dim FullSaveName As String
      
      FullSaveName = "F:\save\sauvegarde"
      
      ' Dès que l'on clique dans une cellule de la feuille, le groupe date-heure est mis à jour dans la cellule E2.
      Range("E2") = Now ' Prends le format date-heure-minute
      
      Jour = Mid(Range("E2"), 1, 2)
      Mois = Mid(Range("E2"), 4, 2)
      Annee = Mid(Range("E2"), 7, 4)
      Heure = Mid(Range("E2"), 9, 2)
      Minute = Mid(Range("E2"), 15, 2)
      FullSaveName = FullSaveName & Annee & Mois & Jour & Heure & Minute & ".xls"
      
      MsgBox FullSaveName ' Tu vois ce que tu enregistres. A toi de finir.
    End Sub
    Bonjour et merci a toi Dormeur74,
    Je vais essayé ce programme ert reviens vers en cas de problème.
    Merci encore en fois
    Denis

Discussions similaires

  1. Problème de backup avec Word 2007
    Par Joe l indien dans le forum Logiciel - Software - Open Source
    Réponses: 11
    Dernier message: 29/01/2011, 14h38
  2. Boutons Macro et VBA grisé Excel 2007
    Par ZeWeLL dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 09/08/2010, 16h39
  3. Problème de messagerie avec Outlook 2007
    Par invitecfbf3d81 dans le forum Logiciel - Software - Open Source
    Réponses: 6
    Dernier message: 02/11/2009, 13h58
  4. problème utilisation VBA sur excel 2007
    Par invite7b559047 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 16/02/2007, 00h00
  5. VBA - problème avec les dates dans les filtres automatiques
    Par invitea11da6bd dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 15/07/2004, 12h47