Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Général VBA
Général VBA Forum général VBA . Pour les logiciels spécifiques (Access, Excel, Word, ...), postez dans les bons sous forums.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/10/2006, 09h50   #1
Débutant
 
Inscription : novembre 2003
Messages : 999
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 999
Points : 114
Points : 114
Par défaut GetSaveAsFilename pour vba exel

Bonjour tout le monde

J'essais de créer un nouveau fichier exel en l'enregistrant.

j'arrive à créer un nouveau fichier, mai je n'arrive pas à le nommer.

Voici le code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
Sub enregistrersous()
 
Dim msg As String
Dim nomClasseur As String
Dim vclasseur As Workbook
 
On Error Resume Next
 
Set vclasseur = Workbooks.Add
nomClasseur = Application.GetSaveAsFilename
 
If Err.Number <> 0 Then
    msg = "impossible d'enregistrer le Classeur" & nomClasseur & vbCr
    msg = msg & "erreur N° " & Err.Number & " : " & Err.Description
    MsgBox msg, vbExclamation, "Enregistrement impossible"
End If
 
End Sub

Y a t'il un moyen de nommer le fichier lors de sa création.

Cordialement

A bientôt
__________________
je suis un développeur debutant qui cherche à comprendre.

Certain livre sont pas facile à comprendre.
argon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2006, 10h10   #2
Responsable Visual Basic
 
Avatar de bbil
 
Inscription : juin 2003
Messages : 11 773
Détails du profil
Informations personnelles :
Âge : 45
Localisation : France, Ariège (Midi Pyrénées)

Informations forums :
Inscription : juin 2003
Messages : 11 773
Points : 16 854
Points : 16 854
Envoyer un message via Skype™ à bbil
GetSaveAsFileName , ne te permet pas de sauver mais de sélectionner/Saisir le nom avec lequel tu ve sauver ton fichier...

modifie la ligne :
sans type (Variant) .. GetSaveAsFileName retournant un boolean à false si pas de fichier sélectionner, sinon retourne une chaine contenant le nom dee fichier..


puis
Code :
1
2
3
4
5
 
nomClasseur = Application.GetSaveAsFilename
If nomClasseur <> False Then
  vclasseur.SaveAs nomClasseur
End If
bbil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2006, 10h11   #3
Responsable Visual Basic
 
Avatar de ThierryAIM
 
Homme Thierry
Inscription : septembre 2002
Messages : 3 670
Détails du profil
Informations personnelles :
Nom : Homme Thierry
Âge : 49
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Secteur : Industrie

Informations forums :
Inscription : septembre 2002
Messages : 3 670
Points : 5 672
Points : 5 672
Il faut l'enregistrer :
Code :
If nomClasseur <> "" Then vclasseur.SaveAs Filename:=nomClasseur
__________________
Vous vous posez une question, la réponse est peut-être ici :
Toutes les FAQs VB
Les Cours et Tutoriels VB6/VBScript
Les Sources VB6


Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

MioSkins.org : le site de référence pour GPS et PDA Mitac MIO
iPHONIX.fr : le must francophone des infos pour iPhone, iPad, ...
ThierryAIM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2006, 10h14   #4
Débutant
 
Inscription : novembre 2003
Messages : 999
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 999
Points : 114
Points : 114
Bonjour tout le monde

Ca fonctionne, je souhaiterais faire en sorte que le fichier enregistré soit automatiquement en .xls

J'ai essayé avec le code ci-dessous mai ca ne fonctionne pas.

Code :
1
2
 
nomClasseur = Application.GetSaveAsFilename(nomClasseur, xls, xls, enregistrer, enregistrer)
Que dois je modiffier svp.

Merci

Cordialement

A bientôt
__________________
je suis un développeur debutant qui cherche à comprendre.

Certain livre sont pas facile à comprendre.
argon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2006, 11h12   #5
Responsable Visual Basic
 
Avatar de ThierryAIM
 
Homme Thierry
Inscription : septembre 2002
Messages : 3 670
Détails du profil
Informations personnelles :
Nom : Homme Thierry
Âge : 49
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Secteur : Industrie

Informations forums :
Inscription : septembre 2002
Messages : 3 670
Points : 5 672
Points : 5 672
il n'y a pas de touche F1 sur ton clavier ?

Code :
nomClasseur = Application.GetSaveAsFilename(fileFilter:="Excel Files (*.xls), *.xls")
__________________
Vous vous posez une question, la réponse est peut-être ici :
Toutes les FAQs VB
Les Cours et Tutoriels VB6/VBScript
Les Sources VB6


Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

MioSkins.org : le site de référence pour GPS et PDA Mitac MIO
iPHONIX.fr : le must francophone des infos pour iPhone, iPad, ...
ThierryAIM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2006, 11h25   #6
Débutant
 
Inscription : novembre 2003
Messages : 999
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 999
Points : 114
Points : 114
Re

Merci ca fonctionne!

J'ai remarqué qu'il cré deux fois le même fichier.

Peux ton iremédier?

A+
__________________
je suis un développeur debutant qui cherche à comprendre.

Certain livre sont pas facile à comprendre.
argon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2006, 11h56   #7
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Mets tout le code que tu utilises pour cette sauvegarde
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2006, 20h34   #8
Débutant
 
Inscription : novembre 2003
Messages : 999
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 999
Points : 114
Points : 114
Bonsoir tout le monde



Voici tout le code.


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
 
Dim msg As String
Dim nomClasseur
Dim vclasseur As Workbook
 
On Error Resume Next
 
Set vclasseur = Workbooks.Add
nomClasseur = Application.GetSaveAsFilename(fileFilter:="Excel Files (*.xls), *.xls")
 
If nomClasseur <> False Then
 
vclasseur.SaveAs nomClasseur
 
End If
 
If nomClasseur <> "" Then
vclasseur.SaveAs Filename:=nomClasseur
 
End If
 
If Err.Number <> 0 Then
    msg = "impossible d'enregistrer le Classeur" & nomClasseur & vbCr
    msg = msg & "erreur N° " & Err.Number & " : " & Err.Description
    MsgBox msg, vbExclamation, "Enregistrement impossible"
End If
 
End Sub
Cordialement

A bientôt
__________________
je suis un développeur debutant qui cherche à comprendre.

Certain livre sont pas facile à comprendre.
argon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2006, 20h46   #9
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Ça ne te paraît pas évident ? Là, effectivement, tu enregistres deux fois le fichier
Si tu veux tester les deux conditions, essaie ça :
Code :
1
2
3
If (nomClasseur <> False) or (nomClasseur <> "" )Then 
     vclasseur.SaveAs filename:=nomClasseur 
End If
Je ne suis pas sûr que tu puisses à la fois tester un boolean et un string... Si tu as une erreur, imbrique tes tests
Code :
1
2
if....test 1
....if test 2
Mais comme je n'ai pas tout relu, je ne comprends pas ton double test
Tu testes et tu dis, je relirai si nécessaire
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2006, 21h12   #10
Débutant
 
Inscription : novembre 2003
Messages : 999
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 999
Points : 114
Points : 114
Re

Merci, ca fonctionne ouskel'n'or

Faudra que je face plus attention la prochaine fois.

A+
__________________
je suis un développeur debutant qui cherche à comprendre.

Certain livre sont pas facile à comprendre.
argon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h00.


 
 
 
 
Partenaires

Hébergement Web