Treeview Font Color

Status
Niet open voor verdere reacties.

weswillem

Gebruiker
Lid geworden
8 nov 2011
Berichten
310
Op welke wijze geef je de Node Key:=KIND1_KIND1 een kleur
als Cells(i,8) een bepaalde waarde heeft.
En dit veranderd bij een andere waarde


Code:
Private Sub UserForm_Initialize()
  Worksheets("Blad1").Select
  Dim Klas As String
  Me.TreeView1.Nodes.Clear
  Me.TreeView1.Width = 190
  Me.TreeView1.Height = 227
  Me.TreeView1.LineStyle = tvwRootLines
  Me.TreeView1.Indentation = 20

  Const OUDER = "Ouder"
  With Me.TreeView1.Nodes
    .Add Key:=OUDER, Text:="Alle Zaken"  'Hoofd node

'=========================================================
Klas = Cells(2, 1)
    Const KIND1 = "Kind1"
    .Add Relative:=OUDER, _
         relationship:=tvwChild, _
         Key:=KIND1, _
         Text:="Lopende Zaken"
    
    'Zoek eerst de klas
    For i = 7 To 100
        If Cells(i, 3) = 0 Then Exit For
        If Cells(i, 7) = Klas Then
            Const KIND1_KIND1 = "Kind1Kind1"
    
            .Add Relative:=KIND1, _
                 relationship:=tvwChild, _
                Key:=KIND1_KIND1 & " " & i, _
                Text:=Cells(i, 3) & "- " & Cells(i, 8)
                'als Cells(i,8) een bepaalde waarde heeft moet dit een bepaalde kleur krijgen
        End If
    Next i
    
        'Const KIND1_KIND2 = "Kind1Kind2"
        '.Add Relative:=KIND1, _
        '     relationship:=tvwChild, _
        '     Key:=KIND1_KIND2, _
        '     Text:="Kind1_Kind2"
             
'=====================Klas 2====================================
    Klas = Cells(1, 1)
    Const KIND2 = "Kind2"
    .Add Relative:=OUDER, _
         relationship:=tvwChild, _
         Key:=KIND2, _
         Text:="Geloten zaken"
        For i = 7 To 100
        If Cells(i, 3) = 0 Then Exit For
        If Cells(i, 7) = Klas Then
        Const KIND2_KIND1 = "KInd2Kind1"
        .Add Relative:=KIND2, _
             relationship:=tvwChild, _
             Key:=KIND2_KIND1 & " " & i, _
              Text:=Cells(i, 3) & "- " & Cells(i, 8)
         End If
        Next i
        
End With



End Sub
 
Even op voortborduren met een If statement.
Code:
Treeview1.Nodes([COLOR=#3E3E3E]"Kind1_Kind2"[/COLOR]).ForeColor = vbRed

Bijvoorbeeld.
Code:
if Cells(i, 3) & "- " & Cells(i, 8) = "wes- willem" then TreeView1.Nodes(Cells(i, 3) & "- " & Cells(i, 8)).forecolor = vbred
 
Laatst bewerkt:
2020-11-09 (2).png
Helaas. Wat ik ook probeer, krijg elke de melding -Element Not Found-.
Kennelijk gaat mis bij TreeView1.Nodes(Cells(i, 3) enz.
Misschien lees ik het verkeerd maar bij die code, wil ik alleen weten
of de waarde uit Cells(i,8) bestaat uit Tekst1 of Tekst 2 enz.
Code:
if Cells(i, 8) = "Tekst1" then 
          TreeView1.Nodes(Cells(i, 3) & "- " & Cells(i, 8)).forecolor = vbred
elseif Cells(i, 8) = "Tekst2" then 
          TreeView1.Nodes(Cells(i, 3) & "- " & Cells(i, 8)).forecolor = vbgreen
end if
 
Laatst bewerkt:
Laat ik nou helemaal geen zin hebben dit na te bouwen.
 
Ik mis een spatie in "- "
 
Code:
.Add Relative:=KIND1, _
                 relationship:=tvwChild, _
                Key:=KIND1_KIND1 & " " & i, _
                Text:=Cells(i, 3) & "- " & Cells(i, 8)
                If Cells(i, 8) = "Tekst1" Then TreeView1.Nodes([COLOR=#ff0000]"Kind1Kind1 " & i & ""[/COLOR]).ForeColor = vbRed
        End If
 
@HSV

KLasse, je maak mijn hele dag weer goed.
Ik had dit ook uitgeprobeerd alleen zonder "& i &""
In ieder geval er wat bij geleerd.
Thanx.
 
Altijd mooi,

Misschien wil je de vraag als opgelost markeren (in je openingsvraag).
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan