The revised code works fine. The one issue you may have is that you are not displaying decimals, so in one instance your rounded values look like 1% but are actually 0.7% so the macro clears it. If you don't want that, then use:
If Application.Round(c.Value,2) < 0.01 Then