sauvegarder un fichier excel dans un dossier avec comme titre une date

sergio.th

XLDnaute Nouveau
bonjour:D,


tout d'abord bonne année 2012 à tous les membres, que cette année vous apporte joie,bonheur et santé.
Je suis novice:p dans excel et je ne comprend rien au macros.
Cependant j'aurai besoin que quelqu'un m'aide :eek:à créer une fiche excel.
Ce que j'essaie de faire peu paraitre simple pour certain.
je veux crée une fiche excel type et qui apres l'avoir remplie je peux l'enregistré dans un dossier(ex:via un ctrl+m) dans mes documents avec la date comme titre et un retour a ma fiche type.
En vous remerciant par avance:).

cordialement.
 
Dernière édition:

Excel-lent

XLDnaute Barbatruc
Re : PLEASE help me!!!!!!!!!!!!!!!!

Bonjour et bienvenu sur le forum Sergio.th,

Comme indiqué par TotoTiti2008, il y a quelques règles à respecter sur le forum (comme indiqué dans la chartre).

Celle que tu as involontairement bafoué : "ne jamais mettre en titre de message : HELP, URGENT, ..."
Car :
-> les "répondeurs" sont tous bénévoles. Ils ont un métier, une vie personnelle à côté du forum. Ils ne sont pas au garde à vous derrière leurs écrans!
-> l'avantage de mettre un titre parlant (en rapport avec ta question), les personnes non spécialisées dans le domaine qui te pose soucis : formules basique, formules complexe, VBA, ... ne perdront pas de temps à lire ton message. Leurs permettant ainsi à consacrer plus de temps aux personnes qu'ils peuvent aider.

Sinon, concernant ton soucis, voici un brouillon de macro qui pourrait faire ton affaire :

Sub SauvegardeFichier()
'--------------------------------------------------------
' Macro réalisé le 13/01/2012 par Excel-lent
---------------'
'----------------------------------------------------------------'
' Description : Sauvegarde du fichier-----------------------'
'----> vérifie si le répertoire où enregistrer le fichier existe--'
'-------=> s'il n'existe pas : création du répertoire-----------'
'----> vérifie si le fichier n'existe pas déjà--------------------'
'-------=> s'il n'existe pas : sauvegarde du fichier-----------'
'--------------------------------------------------------

Dim NomDuFichier As String


Application.ScreenUpdating = False

' <Début> Détermination du nom du fichier
Dim LaDate As Date, Lannee As Long
Dim LeMois As Variant, LeJour As Variant

LaDate = Date
Lannee = Year(LaDate)
LeMois = Month(LaDate)
LeJour = Day(LaDate)


If Len(LeJour) = 1 Then LeJour = "0" & LeJour
If Len(LeMois) = 1 Then LeMois = "0" & LeMois

NomDuFichier = Lannee & LeMois & LeJour

' <Fin> Détermination du nom du fichier



' Test si le répertoire existe sinon création
If Dir("C\Mes documents\Sauvegarde", vbDirectory) <> "" Then
---' le répertoire existe déjà -> donc ok! Ne rien à faire---
Else
---' le répertoire n'existe pas encore -> création du répertoire
---MkDir "C\Mes documents\Sauvegarde"
End If

' Test si le fichier existe déjà avant son enregistrement
' vbHidden pour rechercher aussi les fichiers cachés

If Dir("C\Mes documents\Sauvegarde\" & NomDuFichier & ".xls", vbHidden) <> "" Then
---' Le fichier existe déjà. Ne pas écraser le fichier existant et prévenir l'utilisateur
---' que le fichier n'a pas été enregistré
---MsgBox "Le fichier existe déjà!" & vbCrLf & vbCrLf & "Attention, la sauvegarde n'a pas été effectuée"
---Else
---' Le fichier n'existe pas. Sauvegarde du fichier
---ChDir "C\Mes documents\Sauvegarde\" & Date_Fact
---ActiveWorkbook.SaveAs "C\Mes documents\Sauvegarde\" & NomDuFichier & ".xls"
---MsgBox "La sauvegarde a été correctement effectué!"
End If

Application.ScreenUpdating = True

End Sub

N'ayant pu tester la macro, il y a peut-être quelques petits détails qui reste à creuser.

Bonne après midi

Edition : il manquait un retour chariot. Pas pratique de présenter un code VBA avec la balise "QUOTE" grrrr
 
Dernière édition:

sergio.th

XLDnaute Nouveau
Re : PLEASE help me!!!!!!!!!!!!

Merci beaucoup,


je suis vraiment desolé d'avoir bafoué la charte et j'éspere n'avoir blessé personnes.
Je l'avoue je n 'ai pas pris le temps de la lire:p et m'en excuse.
Cela me servira de leçon.
Je vais essayer cette macro merci

cordialement
 
Haut Bas