Definir guardar como
Hola, me gustaria saber si es posible definir la carpeta que habre por defecto el cuadro de dialogo de guardar como. (Yo utilizo el editor de visual basic que trae el excel. Quiero guardar el achivo excel en una carpeta diferente a la que esta a traves de un programa en vb que me muestra el dialogo guardar como, me gustaria no tener que andar buscandola todo el tiempo..)
Hola !
Aqui tienes la funcion que te abre el cuadro de dialogo que pides.
Application.GetSaveasFilename()
te lo mando en un ejemplo para que puedas ver su funcionamiento. De todas maneras recuerda que luego tienes que programar tu mismo el Save del archivo. Esta funcion unicamente te devuelve el FilePath donde vas a aguardar el archivo.
fileSaveName = Application.GetSaveAsFilename( _
fileFilter:="Text Files (*.txt), *.txt")
If fileSaveName <> False Then
MsgBox "Save as " & fileSaveName
End If
Aqui tienes la funcion que te abre el cuadro de dialogo que pides.
Application.GetSaveasFilename()
te lo mando en un ejemplo para que puedas ver su funcionamiento. De todas maneras recuerda que luego tienes que programar tu mismo el Save del archivo. Esta funcion unicamente te devuelve el FilePath donde vas a aguardar el archivo.
fileSaveName = Application.GetSaveAsFilename( _
fileFilter:="Text Files (*.txt), *.txt")
If fileSaveName <> False Then
MsgBox "Save as " & fileSaveName
End If
Con esta funcion consigo que me ponga el nombre por defecto, pero ¿como le meto la ruta deonde quiero que lo meta? yo he puesto:
initialfilename:=d:directorionombre del archivo
y me sale el cuadro de dialogo con el nombre del archivo, pero no en el directori que quiero. Por cierto me da error por los dos puntos,?????
ando un poco perdido je je..
initialfilename:=d:directorionombre del archivo
y me sale el cuadro de dialogo con el nombre del archivo, pero no en el directori que quiero. Por cierto me da error por los dos puntos,?????
ando un poco perdido je je..
Asignale a una variable, digamos de nombre MiRuta, el path donde te quieras guardar el archivo. Luego utiliza la funcion, y despues el Getsaveasfilename... deberia funcionar.
ChDir MiRuta
FicheroAGrabar = Application.Getsaveasfilename _(Nombre_por_defecto_que quieras)
espero que te sirva
ChDir MiRuta
FicheroAGrabar = Application.Getsaveasfilename _(Nombre_por_defecto_que quieras)
espero que te sirva
Luego tienes que programar que te guarde el fichero... Las instrucciones completas son las siguientes. Aunque hay un problema, que es justamente lo que estoy preguntando en el Foro en una pregunta. El problema es que luego te da error si el usuario intenta guardar un fichero cuyo nombre ya existe. En ese caso no funciona.
ChDir MiRuta
FicheroAGrabar = Application.Getsaveasfilename _(Nombre_por_defecto_que quieras)
If FicheroAGrabar = "False" Then
Exit Sub
Else
Application.DisplayAlerts = True
ActiveWorkbook.SaveAs _
Filename:=FicheroAGrabar, _
FileFormat:=xlWorkbookNormal
Application.DisplayAlerts = False
End If
ChDir MiRuta
FicheroAGrabar = Application.Getsaveasfilename _(Nombre_por_defecto_que quieras)
If FicheroAGrabar = "False" Then
Exit Sub
Else
Application.DisplayAlerts = True
ActiveWorkbook.SaveAs _
Filename:=FicheroAGrabar, _
FileFormat:=xlWorkbookNormal
Application.DisplayAlerts = False
End If
De nada !
Por cierto... Si consigues descubrir como controlar lo del nombre archivo duplicado, hazmelo saber.
El texto completo de mi duda está en este mismo foro con el Título... "Atascado en esto desde hace dos dias ..."
Saludos !
Por cierto... Si consigues descubrir como controlar lo del nombre archivo duplicado, hazmelo saber.
El texto completo de mi duda está en este mismo foro con el Título... "Atascado en esto desde hace dos dias ..."
Saludos !
