you need to use the 'var' type if you want to get None for an empty cell. Excel passes 0 for an empty cell when the argument type is int, so by the time it gets to PyXLL there's no way of knowing that it was actually empty.