Borrar un Archivo PDF con vba

Necesito poder borrar un archivo PDF a través de un comando.

¿Cómo puedo hacerlo?

2 respuestas

Respuesta
1

Asumo que va a borrar el archivo físico pdf, puede hacerlo utilizando FileDialog, le preparé este ejemplo.

Hago clic en la carpeta abrir y obtengo la lista de los archivos PDF, si hago doble clic se selecciona el archivo y se cierra el formulario .

Si hago clic en Si se procede a retirar el archivo. Si no hay error me informa.

CÓDIGO DEL FORMULARIO

Function selectArchivo() As String
    'Creamos un control de errores
    On Error GoTo sol_err
    'Declaramos las variables
    Dim vFD As Object 'vFD=FileDialog
    Dim vRutaIni As String
    'Difinimos la ruta inicial
    vRutaIni = Application.CurrentProject.Path
    'Creamos el objeto FileDialog
    Set vFD = Application.FileDialog(msoFileDialogFilePicker)
    'Configuramos las características de nuestra ventana de dialogo
    With vFD
        .Title = "Seleccione el archivo PDF"
        .ButtonName = "A seleccionado el Archivo"
        .InitialView = msoFileDialogViewSmallIcons
        .InitialFileName = vRutaIni
        .Filters.Add "Archivos PDF ", "*.pdf"
        'Detectamos el boton pulsado por el usuario
        If .Show = -1 Then
            'Asignamos a la función la carpeta seleccionada, convirtiendola a un valor de tipo String
            selectArchivo = CStr(.SelectedItems.Item(1))
        Else
            'Si se pulsa cancelar avisamos y salimos
            MsgBox "Ha cancelado la selección", vbOKCancel Or vbExclamation Or vbMsgBoxSetForeground, "Access"
            Exit Function
        End If
    End With
Salida:
    Exit Function
sol_err:
    MsgBox "Se ha producido un error: " & Err.Number & " - " & Err.Description
    Resume Salida
End Function
Private Sub btnCarpeta_Click()
  Me.ctlArchivo = selectArchivo()
End Sub
Private Sub btnRetirar_Click()
 On Error GoTo hay_error
 If Not IsNull(Me.ctlArchivo) Then
    If MsgBox("¿Está seguro que retira el archivo pdf " & vbCrLf & _
    Me.ctlArchivo, vbQuestion + vbYesNo + vbDefaultButton2, "Retirando PDF") = vbNo Then
       Exit Sub
    Else
      Kill Me.ctlArchivo
    End If
    If Err.Number = 0 Then
       MsgBox "Archivo PDF retirado satisfactoriamente", vbInformation, "Le informo"
    End If
 End If
hay_error_exit:
  Exit Sub
hay_error:
    MsgBox "Ocurrió el error " & Err.Number & " - " & Err.Description, vbCritical, "Error..."
    Resume hay_error_exit
End Sub

Observe la función SelectArchivo(), la puede ajustar de acuerdo a sus necesidades para otros tipos de archivos.

Respuesta
1

¿Borrar lo escrito en él o eliminar el archivo?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas