Es posible guardar un documento en csv con un macro?

Tengo un documento que debo guardar en .xls y en .csv (delimitado por comas) en la misma carpeta, quisiera saber si esto se puede hacer con un macro, actualmente estoy tratando de agregárselo a uno que ya tengo dentro del documento que ordena y estandariza todas las fuentes en el documento, mi idea es que un solo macro haga todo esto para poder ahorrar la mayor cantidad de tiempo posible, dejo el macro que ya tengo en mi documento:
Sub FUENTENUM()
'
' FUENTENUM Macro
'
' Acceso directo: Ctrl+m
'
Cells.Select
With Selection.Font
.Name = "Calibri"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
Selection.Font.Size = 12
Selection.Font.Size = 11
Columns("A:A").Select
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 5
Columns("A:R").Select
With Selection
.HorizontalAlignment = xlGeneral
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlCenter
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("B2").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub

1 respuesta

Respuesta
1

De Excel no tengo lo que se dice ni idea, pero por si te puede ayudar. Tengo un archivo llamado lugaresavisitar con la extensión.docx y quiero que me lo copie en otra carpeta con la extensión xls. En mi caso en un formulario, pero la instrucción la puedes poner en cualquier otro lado

Cuando lo pulso me pasa ese archivo a otra carpeta

En este caso, pero te anticipo que se puede hacer de mil formas( sin exagerar, que exagerando...) le digo al botón

Private Sub Comando15_Click()
Dim a As String, b As String
a = "C:\users\gonza\documentos\lugaresavisitar.docx"
b = "C:\users\gonza\documentos\basespracticas\lugaresavisitar.xls"
FileCopy a, b
End Sub

Lo que de verdad te interesa es la instrucción FileCopy

Logré hacer que exportara a .csv con ese comando hace un tiempo pero dejé de usarlo porque solo exporta a una ruta fija y lo que yo necesito que lo guarde en la ruta actual en la que se encuentra el documento, es decir que si lo copio en otra carpeta o ubicación lo exporte a su nueva ubicación.

Ruben, ya te dije que el Excel no es lo mío, si fuera en Access te podría poner muchos ejemplo usando, por ejemplo, la función MSOFiledialog

Pero si ambos van a estar en la misma carpeta y lo haces desde un archivo puedes ver en la image que en una carpeta llamada Borrar tengo un archivo llamado Ejemplo

Y, en mi caso desde una base de datos que está en la misma carpeta en un botón

Cuando pulso el botón

Me lo ha copiado como Excel

El código del botón es

Private Sub Comando0_Click()
Dim a As String, b As String
a = CurrentProject.Path & "\" & "ejemplo.docx"
b = CurrentProject.Path & "\" & "ejemploexcel.xls"
FileCopy a, b
End Sub

Current....es la ruta a la carpeta desde donde estás trabajando.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas