Guardar hoja excel en PDF con nombre repetido

Hola, tengo una macro que guarda el área de una hoja en formato PDF en una carpeta especifica del sistema llamada "ARCHIVO", este archivo PDF lleva el nombre de una celda (B1), pero no sé como hacer para que en el caso que el nombre con que se va a guardar el archivo ya exista en la carpeta, no lo reescriba, sino que lo guarde con el mismo nombre seguido de un numero (por ejemplo - 1 ). La macro es la siguiente:

Sub ImpPDF
'
Application.ScreenUpdating = False
Sheets("Hoja1").Select
Range("B2:N50").Select

On Error Resume Next
archi = ThisWorkbook.Path & "\ARCHIVO\" & Cells(1, 2) & ".pdf"
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=archi, _
Quality:=xlQualityStandard, IncludeDocProperties:=False, IgnorePrintAreas _
:=False, OpenAfterPublish:=False

End Sub

Gracias de antemano a quien pueda ayudarme.

1 Respuesta

Respuesta
2

Te anexo la macro con el cambio

Sub ImpPDF()
'Mod.Por.DanteAmor
    Application.ScreenUpdating = False
    Sheets("Hoja1").Select
    Range("B2:N50").Select
    '
    n = Cells(1, 2)
    m = 1
    archivo = ThisWorkbook.Path & "\ARCHIVO\" & n & ".pdf"
    Do While True
        If Dir(archivo) <> "" Then
            archivo = ThisWorkbook.Path & "\ARCHIVO\" & n & "-" & m & ".pdf"
            m = m + 1
        Else
            Exit Do
        End If
    Loop
    '
    Selection.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=archivo, _
        Quality:=xlQualityStandard, IncludeDocProperties:=False, _
        IgnorePrintAreas:=False, OpenAfterPublish:=False
    '
End Sub

¡Gracias! Excelente, ya me había usted colaborado con un ejemplo anterior, le agradezco inmensamente por su tiempo, la solución es perfecta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas