Imprimir solo las celdas con información omitir vacias?

hola dam tu información pasada me fue muy útil,

es la misma excel dos hojas "remisión y detalle" en la cual tengo un rango de celdas

"A19:A53" coloco los códigos de barras iniciando en "A19" y de

"B19:B53" van los títulos que el buscarv encuentra en la hoja "detalles"

tengo un botón imprimir el me guarda una impresión pdf , y funciona ok

como veras el rango de "A19:A53" Y "B19:B53" es amplio y algunas veces solo utilizo 3

celdas o 10 ö 5 eso depende

lo que necesito es acomodar mi código para que cuando imprima solo escoja las celdas

con la información y las vacías no las imprima

Sub GeneraPDF()
Dim celda As Range
For Each celda In ActiveSheet.Range("B12,B13")
If celda = "" Then
MsgBox "ingrese nombre de Profesor e Inst." & celda.Address
Exit Sub
End If
Next
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\llale5\Mis documentos\excelmuestras\MUESTRAS " & Range("B12").Value & Range("B13").Value & Range("G10").Value & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub

espero tu respuesta

gracias

fransimanca

Respuesta
1

Se me ocurre que copies toda la hoja "remisión" a una hoja nueva "copia", pegando únicamente valores.

Luego ordenar el rango de A19:B53 y después mandes a crear el PDF.

La macro te quedaría así

Sub GeneraPDF()
Dim celda As Range
For Each celda In ActiveSheet.Range("B12,B13")
If celda = "" Then
MsgBox "ingrese nombre de Profesor e Inst." & celda.Address
Exit Sub
End If
Next
    Cells.Select
    Selection.Copy
    Sheets.Add
    hoja = ActiveSheet.Name
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A19:B53").Select
    Application.CutCopyMode = False
    Selection.Sort Key1:=Range("A19"), Order1:=xlAscending, Header:=xlNo, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\llale5\Mis documentos\excelmuestras\MUESTRAS " & Range("B12").Value & Range("B13").Value & Range("G10").Value & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
    Application.DisplayAlerts = False
    Worksheets(hoja).Delete
    Application.DisplayAlerts = True
End Sub

Pruébala y me comentas.

Saludos. Dam

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas