Création d'un nom de classeur à partir du contenu d'une cellule excel

Résolu
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009 - 24 mars 2009 à 10:52
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009 - 24 mars 2009 à 14:20
Est ce possible de faire la sauvegarde d'un document en créant un nouveau fichier en lui attitrant le contenu d'une variable ou d'une cellule excel comme titre?

Sub sauvegarde()
'
' sauvegarde Macro
'

'
    Dim titre As String
    titre = Range("A3").Value
    ChDir "C:\Documents and Settings\Pat\Desktop\tests"
    ActiveWorkbook.SaveAs Filename:= _
        "C:\Documents and Settings\Pat\Desktop\tests\????????.xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End Sub

11 réponses

pile_poil Messages postés 682 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 4 août 2012 6
24 mars 2009 à 12:04
bonjour

Sub sauvegarde()
'
' sauvegarde Macro
'

'
    Dim titre As String
    titre = Range("A3").Value
    ChDir "C:\Documents and Settings\Pat\Desktop\tests"
    ActiveWorkbook.SaveAs Filename:= _
        "C:\Documents and Settings\Pat\Desktop\tests" & titre & ".xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End Sub
ou plus simplement encore:

Sub sauvegarde()

    ActiveWorkbook.SaveAs Filename:= _

        "C:\Documents and Settings\Pat\Desktop\tests" & Range("A3").Value & ".xlsm", FileFormat:= _

        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
3
pile_poil Messages postés 682 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 4 août 2012 6
24 mars 2009 à 14:10
remplace range("B300") par
activesheet.range("B300")

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
3
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009
24 mars 2009 à 12:10
Super!, Merci!
0
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009
24 mars 2009 à 12:56
j'ai encore une erreure... 

    ' Enregistre nouveau nom de fichier
        Sheets("IMMEUBLE").Select
        Range("B300").Activate
        ChDir "C:\Documents and Settings\Pat\My Documents\Remax\commercial"
        ActiveWorkbook.SaveAs Filename:= _
        "C:\Documents and Settings\Pat\My Documents\Remax\fiches client\Alain Pierre\Prospects" & Range("B300").Value & ".xlsm" _
        , FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

même erreur si je fais
    ' Enregistre nouveau nom de fichier
        Dim titre As String
        Sheets("IMMEUBLE").Select
        Range("B300").Activate
        titre = Range("B300").Value
            ChDir "C:\Documents and Settings\Pat\My Documents\Remax\commercial"
            ActiveWorkbook.SaveAs Filename:= _
            "C:\Documents and Settings\Pat\My Documents\Remax\fiches client\Alain Pierre\Prospects" & titre & ".xlsm", FileFormat:= _
            xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

erreur 1004
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pile_poil Messages postés 682 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 4 août 2012 6
24 mars 2009 à 13:04
quelle erreur as tu ?
est ce que le chemin que tu donnes existe bien  ? (pas d'espace en moins ou en trop .... etc)
que contiend B300 ?
[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
0
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009
24 mars 2009 à 13:27
erreur 1004....

sur cette ligne de commande là...  ActiveWorkbook.SaveAs Filename:= _
            "C:\Documents and
Settings\Pat\My Documents\Remax\fiches client\Alain Pierre\Prospects"
& titre & ".xlsm", FileFormat:= _
            xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

le répertoire existe....

l'idéal pour moi aurait en fait été de créer par la même occasion un répertoire du même nom que le fichier xlsm....  

B300 contient le résultat d'un concaténer   une phrase avec une cote pour placer mes fichier en ordre d'importance d'opportunité, le numéro de fiche technique de la bâtisse et l'adresse...

l'erreur doit venir du fait que la ligne de commande est tronquée j'imagine, mais je ne sais pas comment arranger ça...
0
pile_poil Messages postés 682 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 4 août 2012 6
24 mars 2009 à 13:35
le texte de l'erreur 1004 quel est il ?
 il te donne une bonne indication sur la connerie à trouver
et quand il t'affiche l'erreur tu as un bouton aide qui te donne également de bonnes pistes

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
0
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009
24 mars 2009 à 13:48
erreur d'exécution 1004
La méthode 'saveas' de l'objet '_workbook' a échoué
0
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009
24 mars 2009 à 13:53
quand j'efface les espaces weird entre les séparations de la ligne de commande ActiveWorkbook.SaveAs Filename:= _
            "C:\Documents and
Settings\Pat\My Documents\Remax\fiches client\Alain Pierre\Prospects"
& titre & ".xlsm", FileFormat:= _
            xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

Après ça me donne erreur 13: incompatibilité de type sur la ligne: titre = Range("B300").Value
0
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009
24 mars 2009 à 13:58
Si je le fais comme ça:

        Sheets("IMMEUBLE").Select

        ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\Pat\My Documents\Remax\fiches client\Alain Pierre\Prospects" & Range("B300").Value & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
       
ça me donne encore incompatibilité de type en soulignant toute la ligne saveas
       
0
Saratum Messages postés 21 Date d'inscription lundi 23 mars 2009 Statut Membre Dernière intervention 1 avril 2009
24 mars 2009 à 14:20
finallement! :P  merci! hihi :-)
0
Rejoignez-nous