Yes, there are empty values for some lines. In addition, some users put 0 as no value instead of leaving it blank.
I made a trial test with your suggestion by adding one more field (IIf(IsNumeric([Ttlweight]),Ttlweight,0) AS Ttlweight1) next to original field. By comparison, the marked differences are that the decimal place becomes unlimited, empty cell 0, 0 cell the same. The most important is that the field format is still General, wrap text and Right (Indent) without changes. That is the distortion of the conversion from query to excel file. What we can do extra to help remove the distortion?