Visual Basic para Aplicaciones - Guardar como pdf o xlsx

Life is soft - evento anual de software empresarial
 
Vista:

Guardar como pdf o xlsx

Publicado por JoseSF (2 intervenciones) el 07/01/2019 01:10:37
Hola necesito guardar la hoja activa solamente como xlsx. Tengo esta que me sirve para guardar como pdf pero al cambiar para xlsx me da error.

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
30
31
Sub ExportarPDf()
 
Dim Ruta As String
Dim NombreArchivo As String
Dim hoja As Object
 
 
    Application.ScreenUpdating = False
 
    With Application.FileDialog(msoFileDialogFolderPicker)
    .Title = "GUARDAR COMO PDF - Seleccionar carpeta"
    .Show
 
    If .SelectedItems.Count = 0 Then
    'nada
    Else
 
        Ruta = .SelectedItems(1)
 
        NombreArchivo = Cells(11, 5)
 
        MsgBox "Guardado en PDF " & NombreArchivo, vbInformation, "MENSAJE "
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Ruta & "\" & NombreArchivo & ".pdf", OpenAfterPublish:=False
 
        End If
 
    Application.ScreenUpdating = True
 
 End With
 
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.157
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Guardar como pdf o xlsx

Publicado por Antoni Masana (409 intervenciones) el 07/01/2019 07:28:00
Dale un vistazo al código

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Sub ExportarPDf_y XLSX()
 
    Dim Ruta As String
    Dim NombreArchivo As String
    Dim hoja As Object
 
    Dim Libro_Actual As String, Hoja_Actual as String, Libro_Nuevo as String
 
    Application.ScreenUpdating = False
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "GUARDAR COMO PDF - Seleccionar carpeta"
        .Show
        If .SelectedItems.Count <> 0 Then
            Ruta = .SelectedItems(1)
            NombreArchivo = Cells(11, 5)
 
            MsgBox "Guardado en PDF " & NombreArchivo, vbInformation, "MENSAJE "
 
            ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                                            Filename:=Ruta & "\" & NombreArchivo & ".pdf", _
                                            OpenAfterPublish:=False
 
            ' ---&---- Guardar como XLSX
 
            Libro_Actual = ActiveWorkbook.Name
            Hoja_Actual = ActiveSheet.Name
 
            Workbooks.Add                      ' --- Crea un nuevo Libro
            Libro_Nuevo = ActiveWorkbook.Name  ' --- Nombre del Libro nuevo
 
            Windows(Libro_Actual).Activate     ' --- Activo MI libro
            Sheets(Hoja_Actual).Select         ' --- Selecciono MI hoja a copiar
 
            ' ---&--- Copia la hoja al libro nuevo
            Sheets(Hoja_Actual).Copy Before:=Workbooks(Libro_Nuevo).Sheets(1)  ' --- 
 
            ' ---&--- Guarda el libro nuevo y lo cierra
            ActiveWorkbook.SaveAs Filename:=Ruta & "\" & NombreArchivo & "xlsx", _
                                  FileFormat:=xlOpenXMLWorkbook, _
                                  CreateBackup:=False
            ActiveWorkbook.Close
        End If
    End With
    Application.ScreenUpdating = True
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

Guardar como pdf o xlsx

Publicado por JoseSF (2 intervenciones) el 07/01/2019 08:48:45
Hola muchas gracias por responder y si me funcionó perfecto muchas gracias por la ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar