What's the value you're passing?
Add one more OR condition to check the value is numeric or not.
If IsNull ({GL_PayableStatement.RemainingBalance}) OR {GL_PayableStatement.RemainingBalance}="" OR {GL_PayableStatement.RemainingBalance}="0" OR Not(IsNumeric({GL_PayableStatement.RemainingBalance}))
Then
0
Else
ToNumber ({GL_PayableStatement.RemainingBalance})