Macro que guarde solamente los datos en una sola hoja excel
Para Dante Amor,
Dante lo que estoy necesitando para culminar es lo siguiente.
Actualmente hay una macro llama "previa" que filtra las lineas que fueron utilizadas por cada hoja activa y guardaba un pdf por hoja. Ahora necesito que todo lo que queda filtrado de las hojas activas se guarde en una sola hoja en el nuevo libro excel.
Saludos!
Sub GuardarPDF()
'
' Por Dante Amor
'
'
Dim hojas()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
ruta = "C:\trabajo\"
n = -1
Set h1 = Sheets("Hoja1") 'Primera hoja donde vas a poner el cliente
'
cliente = h1.Range("G4")
If cliente = "" Then
MsgBox "Debes capturar el cliente en la primera hoja", vbCritical
Exit Sub
End If
'
For Each h In Sheets
If h.Visible = -1 Then
h.Select
ActiveSheet.Unprotect
h.[G4] = cliente
If h.[L4] <> 0 Then
h.Select
Call previa
n = n + 1
ReDim Preserve hojas(n)
hojas(n) = h.Name
If nomb = "" Then
nomb = h.[G4] & " " & Format(h.Range("G2"), "dd-mm-yyyy") + Format(Now, "(hh'mm)") & ".xlsx"
End If
End If
End If
Next
'
If n > -1 Then
usuario = Environ$("computername")
Set h = Sheets("usuarios")
Set b = h.Columns("A").Find(usuario)
If b Is Nothing Then
MsgBox "El usuario: " & usuario & " no existe en la hoja 'usuarios'", vbCritical
Exit Sub
End If
'
correos = b.Offset(0, 1)
Sheets(hojas).Copy
' ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ruta & nomb, _
' Quality:=xlQualityStandard, IncludeDocProperties:=True, _
' IgnorePrintAreas:=False, OpenAfterPublish:=False
ActiveWorkbook.SaveAs Filename:=ruta & nomb, _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close False
'
Set dam = CreateObject("outlook.application").createitem(0)
dam.To = correos
dam.Subject = nomb
dam.Body = "Orden de Pedido"
dam.Attachments.Add ruta & nomb
'dam.Send 'El correo se envía en automático
dam.Display 'El correo se muestra
'
MsgBox "Orden lista para enviar, favor revisar correo"
End If
Call NuevoUnificada
End Sub
1 Respuesta
Respuesta de Dante Amor
1
