Copiar columnas filtradas a otra hoja
Sub CopiarColumnas() Range("B5"). AutoFilter Range("B5"). AutoFilter Application.ScreenUpdating = False cols = Array("C", "B", "D", "K", "L", "M", "H", "N", "O", "P", "Q", "R", "U", "W", "Y", "T", "F") Set h1 = Sheets("HOJA1") Set h2 = Sheets("HOJA2") h2.Cells.ClearContents K = 1 For j = LBound(cols) To UBound(cols) u = h1. Cells(Rows. Count, cols(j)).End(xlUp). Row h1. Range(h1. Cells(5, cols(j)), h1. Cells(u, cols(j))). Copy h2.Cells(3, K). PasteSpecial xlValues K = K + 1 Next Application.ScreenUpdating = True h1.Select 'Contar Registros Dim cuenta As Double cuenta = WorksheetFunction.CountA(Range("B6:B1000000")) Range("B5").Select ActiveWorkbook.Save MsgBox cuenta & " Registros copiados", vbInformation, "::: Registros :::" End Sub
Este código me permite copiar las columnas mencionadas a otra hoja, el detalle es que la HOJA1 tiene una columna Estado con las siguientes condiciones "NUEVO", "ANTIGUO" y "DESACTIVO" quisiera que los que están en "DESACTIVO" no sean copiados en la HOJA2.
Respuesta de Mario Rodríguez