Enregistrement selon date

gregorydekimpe Messages postés 8 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 20 février 2008 - 15 févr. 2008 à 12:42
gregorydekimpe Messages postés 8 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 20 février 2008 - 19 févr. 2008 à 09:25
Au secours :-(!!! Je me casse la tête depuis 2 heures à savoir pourquoi ce petit bout de code ne fonctionne pas! Je lui demande simplement d'enregistrer le fichier sous la forme "PB_Mois.xls". Voici le code :

    Mois = Month(Now)
    Fichier = "PB_" + Mois
    Fichier = Fichier + ".xls"
    fileSaveName = Application.GetSaveAsFilename(Fichier, "Fichier Excel (*.xls), *.xls")
    If fileSaveName <> False Then
    ActiveWorkbook.SaveAs fileSaveName
    End If

Please heeeelp me :-( :-( :-(

4 réponses

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
15 févr. 2008 à 14:09
Bonjour

Un peu blizzard ta logique :
If fileSaveName <> False Then
    ActiveWorkbook.SaveAs fileSaveName
Soit fileSaveName est un bouléen ou une String, mais pas les 2, je penses que ton test devrait être :
If len(fileSaveName) >0 Then

Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
nanardino64 Messages postés 131 Date d'inscription vendredi 18 août 2006 Statut Membre Dernière intervention 17 mars 2010
15 févr. 2008 à 15:03
Salut,
essayes FileSaveName <> "faux"
ActiveWorkbookSaveAs Filename:=FileSaveName
chez moi ça marche en tout cas

Nanardino64
Développons-nous, développeurs.
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
15 févr. 2008 à 23:03
Effectivement, GetOpenFilename ou GetSaveAsFilename retourne "Faux" ou "False", entre guillemets, selon le langage de Windows (il me semble) et c'est différent de False sans guillemets. Et bien sûr, ça retourne cette valeur si on ne choisit pas de nom et qu'on valide... un peu tordu, mais c'est Excel... Je comprends ton étonnement NHenry

Tu pourrais essayer comme ceci (mélange de String et de Boolean...)
If fileSaveName Then  ActiveWorkbook.SaveAs fileSaveName

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
gregorydekimpe Messages postés 8 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 20 février 2008
19 févr. 2008 à 09:25
En fait il fallait simplement mettre des "&" au lieu des "+" :-)... Désolé pour ma question, et merci pour les réponses (j'ai modifié mon test avec "false" au lieu de false)...
0
Rejoignez-nous