Macro para copiar datos de una hoja a un nuevo libro

Pido su apoyo para realizar lo siguiente en una base de datos tengo un formato que contiene cierta información y en la cual ya contiene macros porque me permite ocultar (me oculta todas aquellas filas que tienen valor cero y únicamente quedan reflejadas aquellas que son mayores a "0") y mostrar filas (cuando se activa mostrar filas refleja todas aquellas sin importar el valor), el asunto en si y es lo que necesito que cuando yo presione ocultar filas solo se van a reflejar las filas que contengan valor y son que realmente necesito, lo que deseo que al estar estas filas que son las que me interesan a través de un botón pueda indicarle que me genere otro nuevo libro o archivo los datos que se están mostrando, es decir que los copie al nuevo documento, únicamente con los valores que se muestran pero respetando el formato, si es necesario subo imagen para comprender mas.

Respuesta
1
Sub CreaLibroCopiaDatosdeHoja1()
Dim Arch As String
Arch = "NombreDeArchivo.xlsm" ' AQUI EL NOMBRE DEL ARCHIVO NUEVO
Application.Workbooks.Add
ActiveWorkbook.SaveAs Filename:="C:\Users\User\Desktop\" & Arch, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled
uf = Workbooks(1).Sheets(1).UsedRange.Rows.Count
UC = Workbooks(1).Sheets(1).UsedRange.Columns.Count
Workbooks(1).Sheets(1).Activate: ActiveSheet.Range(Cells(1, 1), Cells(uf, UC)).Copy
Workbooks(2).Sheets(1).Activate: ActiveSheet.Range("A1").PasteSpecial Paste:=xlValues, Paste:=xlFormats
Application.CutCopyMode = False
For i = uf To 1 Step -1
    If Workbooks(2).Sheets(1).Cells(i, 1) = "" Then
    Rows(i).Delete
    End If
Next i
Workbooks(1). Save: Workbooks(2). Save
Application. Quit
End Sub

Te escribi una macro incompleta nose si la web la publicara ya que aveces tiene errores, pero usa esta macro que le agregue unas lineas que me faltaban..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas