J'utilise getAtaSaveSfileName code> dans VBA pour Excel. Y a-t-il un moyen de donner à cela un dossier par défaut pour ouvrir? Par exemple, je veux toujours que cela commence à c: \ mydocuments \ musique code> quand il est appelé. p>
4 Réponses :
Ceci fonctionne:
x = Application.GetSaveAsFilename(InitialFileName:="%USERPROFILE%\My Documents\My Music", _
fileFilter:="Text Files (*.*), *.*")
raté le \ de la fin. Cela en fait un chemin, pas un fichier
Le Notez qu'un voir Filedialog code> Object offre une plus grande flexibilité que getsAstaSaveSfilename CODE> (et sa soeur getopenfileName code>). Exemple: .initialfilename code> plus de 256 caractères entraînera une erreur de temps d'exécution. P> Filedialog code> . Il a plusieurs propriétés utiles, notamment par exemple. allowMultiselect code> (Bien que celui-ci soit certes non pertinents lors de l'épargne). P> P>
Parfait merci. Existe-t-il une façon de définir le type "Enregistrer sous le type" sur une autre chose que la valeur par défaut? Il s'agit de la dernière / la plus grande version d'Excel, mais je souhaite la définir sur le format "xxls" plus ancien (2003 et antérieur).
Hmm, peut-être Cette page sera aider. Cependant, j'ai bien peur que l'objet filedialog code> n'est pas disponible dans les versions Excel plus tard que 2003 (c'est ce que j'entends, de toute façon), votre question peut donc être discutée.
Merci - j'avais lu cette page ... Cependant, je ne pouvais pas le comprendre. Le rapport est généré en 2007 mais je dois enregistrer la sortie en tant que document de 2003. Cela fonctionne plutôt bien maintenant. Essayait juste d'enlever un trottoir de plus. Merci!
Je sais que cette question est ancienne, mais je pensais ajouter que la recherche de fichiers a été obsolète dans Excel 2007, pas Filedialog - il est vivant et bien (si msdn.microsoft.com/en-us/library/bb208503 (v = bureau.12) .aspx est de être cru)
CHDIR peut être utilisé (à l'aide de la réponse de @mark Ransom) affichée dans cet exemple de code: espère que cela clarifie un peu chdir. P> P>