I want to say thank you for the help I've been getting lately. So I am testing the VBA and I noticed that when I copy and paste data to the worksheet, it would overwrite the hidden rows. Is there a way to copy and paste the data without overwriting the hidden rows?
Public Sub CNPInStock()    
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim lr1 As Long, lr2 As Long
    Set ws1 = ThisWorkbook.Sheets(Sheets.Count)       'Last Worksheet
    Set ws2 = ThisWorkbook.Sheets(Sheets.Count - 1)   'Second to Last Worksheet
    lr1 = ws1.Range("A" & ws1.Rows.Count).End(xlUp).Offset(1).Row
    lr2 = ws2.Range("A" & ws2.Rows.Count).End(xlUp).Row
    ws2.Range("A1:C" & lr2).Autofilter Field:=3, Criteria1:=">0", Operator:=xlFilterValues
    ws2.Range("A2:C" & lr2).SpecialCells(xlCellTypeVisible).Copy
    ws1.Range("A" & lr1).PasteSpecial xlPasteValues
End Sub
 
     
     
    