. 23.11.16 #VBA Filtro automático a otra hoja
Buenas tardes, Sebastián
Si te hubiera interpretado correctamente, esta rutina de VBA hace lo que solicitas.
Accede al Editor de VBA (Atajo: Alt + F11), allí inserta un módulo (Insertar-Módulo) y pega el siguiente código:
Sub XtraeAnuevo()
'
'---- Variables modificables:
'=== Krauxs, modifica estos datos de acuerdo a tu proyecto:
IniDatos = "B2" 'primera celda de la base
ColCant = 2 'columna del rango de la base donde está el dato a filtrar (cantidad)
'---- fin Variables
'
'---- inicio de rutina:
'
If ActiveSheet.AutoFilterMode Then
On Error Resume Next
ActiveSheet.ShowAllData
Err.Clear
On Error GoTo 0
GoTo Xtr
End If
Range(IniDatos).AutoFilter
Xtr:
IniDatos = Range(IniDatos).CurrentRegion.Address
ActiveSheet.Range(IniDatos).AutoFilter Field:=ColCant, Criteria1:="<>"
Range(IniDatos).CurrentRegion.SpecialCells(xlCellTypeVisible).Copy
Workbooks.Add
With [A1]
.PasteSpecial Paste:=xlPasteColumnWidths
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats
End With
End Sub
Nota que, al principio del código, hay unas variables para que lo adaptes a tu archivo
.