For i=1 To This.ColumnCount o=This.Columns[i] If pemstatus(o, "cleanup",5) o.cleanup() Endif EndforI'm using custom column class, so here I just check whether the column has the cleanup method (i.e. is it my column class, or the grid may have a column dynamically added or has it autorebuilt, in which case I may have a standard column), and run it if it has one. The column.cleanup then saves its own stuff. What can I say - I wrote this two years ago, and it has always worked.