Is anyone using MS Excel to monitor portfolio and/or trade? How are you getting (real-time) data in & out of your spreadsheets?

    ' Array
    json_BufferAppend json_buffer, "[", json_BufferPosition, json_BufferLength

    On Error Resume Next

    json_LBound = LBound(JsonValue, 1)
    json_UBound = UBound(JsonValue, 1)
    json_LBound2D = LBound(JsonValue, 2)
    json_UBound2D = UBound(JsonValue, 2)

    If json_LBound >= 0 And json_UBound >= 0 Then
        For json_Index = json_LBound To json_UBound
            If json_IsFirstItem Then
                json_IsFirstItem = False
            Else
                ' Append comma to previous line
                json_BufferAppend json_buffer, ",", json_BufferPosition, json_BufferLength
            End If

            If json_LBound2D >= 0 And json_UBound2D >= 0 Then
                ' 2D Array
                If json_PrettyPrint Then
                    json_BufferAppend json_buffer, vbNewLine, json_BufferPosition, json_BufferLength
                End If
                json_BufferAppend json_buffer, json_Indentation & "[", json_BufferPosition, json_BufferLength

                For json_Index2D = json_LBound2D To json_UBound2D
                    If json_IsFirstItem2D Then
                        json_IsFirstItem2D = False
                    Else
                        json_BufferAppend json_buffer, ",", json_BufferPosition, json_BufferLength
                    End If

                    json_Converted = ConvertToJson(JsonValue(json_Index, json_Index2D), Whitespace, json_CurrentIndentation + 2)

                    ' For Arrays/Collections, undefined (Empty/Nothing) is treated as null
                    If json_Converted = "" Then
                        ' (nest to only check if converted = "")
                        If json_IsUndefined(JsonValue(json_Index, json_Index2D)) Then
                            json_Converted = "null"
                        End If
                    End If

                    If json_PrettyPrint Then
                        json_Converted = vbNewLine & json_InnerIndentation & json_Converted
                    End If

                    json_BufferAppend json_buffer, json_Converted, json_BufferPosition, json_BufferLength
                Next json_Index2D

                If json_PrettyPrint Then
                    json_BufferAppend json_buffer, vbNewLine, json_BufferPosition, json_BufferLength
                End If

                json_BufferAppend json_buffer, json_Indentation & "]", json_BufferPosition, json_BufferLength
                json_IsFirstItem2D = True
            Else
                ' 1D Array
                json_Converted = ConvertToJson(JsonValue(json_Index), Whitespace, json_CurrentIndentation + 1)

                ' For Arrays/Collections, undefined (Empty/Nothing) is treated as null
                If json_Converted = "" Then
                    ' (nest to only check if converted = "")
                    If json_IsUndefined(JsonValue(json_Index)) Then
                        json_Converted = "null"
                    End If
                End If

                If json_PrettyPrint Then
                    json_Converted = vbNewLine & json_Indentation & json_Converted
                End If

                json_BufferAppend json_buffer, json_Converted, json_BufferPosition, json_BufferLength
            End If
        Next json_Index
    End If

    On Error GoTo 0

    If json_PrettyPrint Then
        json_BufferAppend json_buffer, vbNewLine, json_BufferPosition, json_BufferLength

        If VBA.VarType(Whitespace) = VBA.vbString Then
            json_Indentation = VBA.String$(json_CurrentIndentation, Whitespace)
        Else
            json_Indentation = VBA.Space$(json_CurrentIndentation * Whitespace)
        End If
    End If

    json_BufferAppend json_buffer, json_Indentation & "]", json_BufferPosition, json_BufferLength

    ConvertToJson = json_BufferToString(json_buffer, json_BufferPosition, json_BufferLength)

' Dictionary or Collection
Case VBA.vbObject
    If json_PrettyPrint Then
        If VBA.VarType(Whitespace) = VBA.vbString Then
            json_Indentation = VBA.String$(json_CurrentIndentation + 1, Whitespace)
        Else
            json_Indentation = VBA.Space$((json_CurrentIndentation + 1) * Whitespace)
        End If
    End If

    ' Dictionary
    If VBA.TypeName(JsonValue) = "Dictionary" Then
        json_BufferAppend json_buffer, "{", json_BufferPosition, json_BufferLength
        For Each json_Key In JsonValue.Keys
            ' For Objects, undefined (Empty/Nothing) is not added to object
            json_Converted = ConvertToJson(JsonValue(json_Key), Whitespace, json_CurrentIndentation + 1)
            If json_Converted = "" Then
                json_SkipItem = json_IsUndefined(JsonValue(json_Key))
            Else
                json_SkipItem = False
            End If

            If Not json_SkipItem Then
                If json_IsFirstItem Then
                    json_IsFirstItem = False
                Else
                    json_BufferAppend json_buffer, ",", json_BufferPosition, json_BufferLength
                End If

                If json_PrettyPrint Then
                    json_Converted = vbNewLine & json_Indentation & """" & json_Key & """: " & json_Converted
                Else
                    json_Converted = """" & json_Key & """:" & json_Converted
                End If

                json_BufferAppend json_buffer, json_Converted, json_BufferPosition, json_BufferLength
            End If
        Next json_Key

        If json_PrettyPrint Then
            json_BufferAppend json_buffer, vbNewLine, json_BufferPosition, json_BufferLength

            If VBA.VarType(Whitespace) = VBA.vbString Then
                json_Indentation = VBA.String$(json_CurrentIndentation, Whitespace)
            Else
                json_Indentation = VBA.Space$(json_CurrentIndentation * Whitespace)
            End If
        End If

        json_BufferAppend json_buffer, json_Indentation & "}", json_BufferPosition, json_BufferLength

    ' Collection
    ElseIf VBA.TypeName(JsonValue) = "Collection" Then
        json_BufferAppend json_buffer, "[", json_BufferPosition, json_BufferLength
        For Each json_Value In JsonValue
            If json_IsFirstItem Then
                json_IsFirstItem = False
            Else
                json_BufferAppend json_buffer, ",", json_BufferPosition, json_BufferLength
            End If

            json_Converted = ConvertToJson(json_Value, Whitespace, json_CurrentIndentation + 1)

            ' For Arrays/Collections, undefined (Empty/Nothing) is treated as null
            If json_Converted = "" Then
                ' (nest to only check if converted = "")
                If json_IsUndefined(json_Value) Then
                    json_Converted = "null"
                End If
            End If
/r/BitcoinMarkets Thread Parent