'Double型のダンプを取得する関数 '=DblDump5(0.1+0.2-0.3) などと使います。 Option Explicit Type MyDouble1 Value As Double End Type Type MyDouble2 Value(0 To 3) As Integer End Type Function DblDump5(number As Double) As String Dim a As MyDouble1, b As MyDouble2 Dim c As Long, d As Long Dim i As Integer, j As Integer, k As Integer Dim s As String * 64 a.Value = number LSet b = a k = 64 For i = 0 To 3 c = b.Value(i) d = 1 For j = 0 To 15 If (c And d) = 0 Then Mid(s, k, 1) = "0" Else Mid(s, k, 1) = "1" End If k = k - 1 d = d * 2 Next Next DblDump5 = Mid$(s, 1, 1) & "-" & Mid$(s, 2, 11) & "-" & Mid$(s, 13) End Function Sub Test() Dim s As String s = DblDump5(0.1 + 0.2 - 0.3) MsgBox s, , "符号部 - 指数部 - 仮数部" End Sub