EXCEL2013以降の関数をEXCEL2010に移植 その5

EXCEL2010で使用できるように自作

 

Option Explicit

 

Function FORMULATEXT(ByVal Data As Range) As Variant 'FORMULATEXT関数(EXCEL2010で使用できるように自作)

 

If IsError(Data) Then
        Select Case Data
            Case CVErr(xlErrDiv0)
                FORMULATEXT = Data.Formula
                Exit Function
            Case CVErr(xlErrNA)
                FORMULATEXT = CVErr(xlErrNA)
                Exit Function
            Case CVErr(xlErrName)
                FORMULATEXT = Data.Formula
                Exit Function
            Case CVErr(xlErrNull)
                FORMULATEXT = CVErr(xlErrNA)
                Exit Function
            Case CVErr(xlErrNum)
                FORMULATEXT = CVErr(xlErrNA)
                Exit Function
            Case CVErr(xlErrRef)
                FORMULATEXT = CVErr(xlErrNA)
                Exit Function
            Case CVErr(xlErrValue)
                FORMULATEXT = CVErr(xlErrNA)
                Exit Function
        End Select
End If

 

If Data = "" Then
        If Data.HasFormula = True Then
                FORMULATEXT = Data.Formula
            Else
                FORMULATEXT = CVErr(xlErrNA)
        End If
        Exit Function
    ElseIf Data.HasFormula = True Then
        FORMULATEXT = Data.Formula
    ElseIf Data.HasFormula = False Then
        FORMULATEXT = CVErr(xlErrNA)
    Else
        FORMULATEXT = CVErr(xlErrNA)
End If

 

End Function

  

以上。