Guardar un archivo en una unidad de red mediante programación en Excel

Resumen

En Microsoft Excel, puede guardar un archivo en cualquier unidad en la que tenga privilegios de escritura y eliminación. Además, puede usar una macro de Microsoft Visual Basic para Aplicaciones para guardar el libro activo y usar una variable para el nombre de archivo. Puede usar variables de ActiveWorkbook.Nameproperty, de datos del cuadro de entrada o de una referencia de celda.

Nota:

Si usa la ruta de acceso completa para el nombre de archivo, Microsoft Excel sabrá exactamente dónde guardar el archivo. Si no se especifica la ruta de acceso, Microsoft Excel guardará el archivo en el directorio o carpeta activos en ese momento.

Más información

Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía, ya sea expresa o implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad e idoneidad para un propósito específico. En este artículo se da por supuesto que está familiarizado con el lenguaje de programación que se muestra y con las herramientas empleadas para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos adaptados a sus necesidades específicas.

Macro de muestra 1

Para guardar el libro activo con una variable en una ruta especificada, use la siguiente macro:

   Sub SaveWithVariable()
       Dim MyFile As String

       MyFile = ActiveWorkbook.Name
       ' Do not display the message about overwriting the existing file.
       Application.DisplayAlerts = False
       ' Save the active workbook with the name of the
       ' active workbook. Save it on the E drive to a folder called
       ' "User" with a subfolder called "JoeDoe."
       ActiveWorkbook.SaveAs Filename:="E:\User\JoeDoe\" & MyFile
       ' Close the workbook by using the following.
       ActiveWorkbook.Close
   End Sub

Macro de muestra 2

Utilice un nombre de archivo almacenado en una celda y guarde el archivo en el servidor de red. Para ello, utilice la macro siguiente:

   Sub SaveWithVariableFromCell()
       Dim SaveName As String
       SaveName = ActiveSheet.Range("A1").Text
       ActiveWorkbook.SaveAs Filename:="E:\User\JoeDoe\" & _
           SaveName & ".xls"
   End Sub