Rich text format (2 Viewers)

ClaraBarton

Registered User.
Local time
Today, 12:17
Joined
Oct 14, 2019
Messages
788
@arnelgp Why doesn't this text show the colors in the richtext text box? This code is in the inport/export form.
Code:
Me.txtSQL = sql2 & IIf(tfFiltered, "<font color=""#2F5496""> WHERE </font>" & sFilter, "") & _
                       IIf(tfOrderBy, "<font color=""#2F5496""> ORDER BY </font>" & sNewOrder, "") & ";</i>"
 
It's all black. no color at all
 
What's the </i> tag for - italic? Should there be <i> at the beginning? Regardless, I still get color.

Would have to see your compiled string.
 
Have you tested tfFiltered and tfOrderBy ?
What happens if you use a simple If/Endif statement?
 
Code:
Public Sub SQLString()
    Dim tfFiltered          As Boolean
    Dim tfOrderBy           As Boolean
    Dim sql2                As String
    Dim sFilter             As String
    Dim sOrderBy            As String
    Dim i                   As Integer
    Dim v                   As Variant
    Dim tmp                 As String
    Dim sNewOrder           As String
   
If Me.lstSelected.ListCount <> 0 Then
    tfFiltered = Me.Child0.Form.FilterOn
    tfOrderBy = Me.Child0.Form.OrderByOn
   
    If tfFiltered Then
        sFilter = Replace$(Me.Child0.Form.Filter, "[zzQuerySubForm].", "")
    End If
   
    If tfOrderBy Then
        sOrderBy = Replace$(Me.Child0.Form.OrderBy, "[zzQuerySubForm].", "")
    End If
   
    sql2 = "<i><font color=""#2F5496"">SELECT </font>"
   
        For i = 0 To Me.lstSelected.ListCount - 1
            sql2 = sql2 & "[" & Me.lstSelected.Column(1, i) & "], "
        Next
       
    sql2 = Left$(sql2, Len(sql2) - 2) & "<font color=""#2F5496""> FROM </font>" & Me.lstTable.Column(4) & ""
   
    If tfOrderBy Then
        sOrderBy = Replace$(sOrderBy, "[zzQuerySubForm].", "")
        v = Split(sOrderBy, ",")
        For i = 0 To UBound(v)
            tmp = ""
            If InStr(1, v(i), " DESC") <> 0 Then
                tmp = " <font color=""#2F5496""> DESC</font>"
                v(i) = Trim$(Replace$(v(i), " DESC", ""))
            End If
            If InStr(1, sql2, v(i)) <> 0 Then
                sNewOrder = sNewOrder & v(i) & tmp & ","
            End If
        Next
       
        If Len(sNewOrder) <> 0 Then
            sNewOrder = Left$(sNewOrder, Len(sNewOrder) - 1)
        Else
            tfOrderBy = False
        End If
    End If
    Me.txtSQL = sql2 & IIf(tfFiltered, "<font color=""#2F5496""> WHERE </font>" & sFilter, "") & _
                       IIf(tfOrderBy, "<font color=""#2F5496""> ORDER BY </font>" & sNewOrder, "") & ";</i>"
Else
    Me!txtSQL = Null
End If
End Sub
Returns:
Code:
SELECT [Amount], [CkDate], [FullName] FROM qryExportRegister WHERE (Year([CkDate])*4+DatePart("q",[CkDate])=(Year(Date())*4+DatePart("q",Date())-1));
And I'm okay with what it returns. I was just curious why it isn't right.
 
Not seeing HTML tags. That's the string need to see - the concatenated string, not executed result showing in textbox. Use a variable to hold it then Debug.Print. Or Debug.Print Me.txtSQL might show it.
 

Users who are viewing this thread

Back
Top Bottom