Replace all occurrences of

iRow = ws.Cells.Find(What:="*", SearchOrder:=xlRows, SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1
by

iRow = ws.Cells(ws.Rows.Count,"A").End(xlup).Row+1
at the beginning of your routine you execute the following code without any purpose that I can identify - i.e. can be removed

Set ws = Worksheets("INFLOWS_WC")
'find first empty row in database
iRow = ws.Cells.Find(What:="*", SearchOrder:=xlRows, SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1