I am really struggling with this one. I am using a macro to write a SQL insert script and this is being used across the world so I have some users that have , and some that have . as a decimal separator.

A snippet of the VBA is below. I feel like I can fix this either on the Excel side or the SQL side but I haven't been able to come up with a solution to either.



Do Until ActiveCell = 2 
    
    For j = 1 To 39
    SQLLAG(j) = ActiveCell.Offset(0, j - 1)
        If SQLLAG(j) = "" Then
            SQLLAG(j) = "NULL"
        End If
    Next j

    SQL =" & SQLLAG(0) & "," & SQLLAG(1) & ",'" & SQLLAG(2) & _
    "','" & SQLLAG(3) & "'," & SQLLAG(4) & "," & SQLLAG(5) & ",'" & SQLLAG(6) & _
    "','" & SQLLAG(7) & "'," & SQLLAG(8) & "," & SQLLAG(9) & ",'" & SQLLAG(10) & _
    "','" & SQLLAG(11) & "'," & SQLLAG(12) & ",'" & SQLLAG(13) & "'," & SQLLAG(14) & _
    ",'" & SQLLAG(15) & "'," & SQLLAG(16) & "," & SQLLAG(17) & "," & SQLLAG(18) & _
    "," & SQLLAG(19) & "," & SQLLAG(20) & "," & SQLLAG(21) & "," & SQLLAG(22) & _
    "," & SQLLAG(23) & "," & SQLLAG(24) & "," & SQLLAG(25) & "," & SQLLAG(26) & _
    "," & SQLLAG(27) & "," & SQLLAG(28) & "," & SQLLAG(29) & "," & SQLLAG(30) & _
    "," & SQLLAG(31) & "," & SQLLAG(32) & "," & SQLLAG(33) & "," & SQLLAG(34) & _
    "," & SQLLAG(35) & "," & SQLLAG(36) & "," & SQLLAG(37) & "," & SQLLAG(38) & _
    "," & SQLLAG(39) & ",GETDATE())"