【问题标题】:A better Excel Bin2Dec function (signed)?更好的 Excel Bin2Dec 函数(已签名)?
【发布时间】:2011-02-06 08:48:56
【问题描述】:

我想知道是否有人为 Excel 编写了比包含的更好的 Bin2Dec VBA 宏。我正在寻找一个可以采用任意大的二进制数(在 ~16 位内)并使用有符号位的函数。 Excel 的 BIN2DEC 函数在 12 位后溢出,而且通常非常难看(Excel 不太好,因为数字也很快溢出)。有什么帮助吗?

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    写了一个:

    Function Bin2SignedDec(sMyBin As String) As Long
        Dim x As Integer
        Dim iLen As Integer
        Dim sign As Boolean
        Dim tmp As String
    
        sign = Mid(sMyBin, 1, 1) = "1"
    
    
        iLen = Len(sMyBin) - 1
        For x = 0 To iLen
            tmp = Mid(sMyBin, iLen - x + 1, 1)
            If sign Then
                If tmp = "1" Then
                    tmp = "0"
                Else
                    tmp = "1"
                End If
            End If
            Bin2SignedDec = Bin2SignedDec + _
              tmp * 2 ^ x
        Next
        If sign Then
            Bin2SignedDec = (Bin2SignedDec * -1) - 1
        End If
    
    End Function
    

    This link got me started

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多