Tip: andere talen zijn Google-Vertaald. Je kunt het English versie van deze link.
Log in
x
or
x
x
Registreren
x

or

Hoe kan ik een vervolgkeuzelijst met kleurcodering in de Word-tabel invoegen?

Stel dat ik een tabel in mijn Word-document heb en nu wil ik de vervolgkeuzelijst met kleurcodes invoegen in een kolom van de tabel. Dit betekent dat wanneer ik één optie selecteer in de vervolgkeuzelijst, de celkleur rood wordt en als ik een andere optie in de vervolgkeuzelijst selecteer, wordt de celkleur groen als volgt. Hoe kun je deze taak in Word-document oplossen?

Doc kleur gecodeerd drop-down

Voeg kleurgecodeerde vervolgkeuzelijst toe in Word-document met VBA-code


Voeg kleurgecodeerde vervolgkeuzelijst toe in Word-document met VBA-code

De volgende stappen kunnen u helpen om deze taak naar behoefte af te maken, eerst de vervolgkeuzelijst invoegen en vervolgens de kleur voor de vervolgkeuzelijst toepassen. Doe alsjeblieft als volgt:

1. Selecteer een cel in de tabel waarin u de vervolgkeuzelijst wilt invoegen en klik vervolgens op ontwikkelaar > Drop-Down List Content Control pictogram, zie screenshot:

doc color-drop down 1

2. De vervolgkeuzelijst wordt ingevoegd in de specifieke cel en klik vervolgens op ontwikkelaar > WONINGAANBODzie screenshot:

doc color-drop down 2

3. In de Content Control Eigenschappen dialoogvenster, voer de volgende bewerkingen uit:

(1.) Voer de titelnaam in in Titel tekstvak;

(2.) Klik op Toevoegen knop ga naar Keuze toevoegen dialoog;

(3.) In de Keuze toevoegen dialoogvenster, typ de vervolgkeuzelijst in de Weergavenaam tekstvak.

doc color-drop down 3

4. Herhaal stap 3 om andere vervolgkeuzelijstitems in te voegen als u dat nodig hebt.

5. Nadat u de eerste vervolgkeuzelijst hebt gemaakt, kunt u deze kopiëren en naar andere cellen plakken zoals u nodig hebt. Zie screenshot:

doc color-drop down 4

6. Dan moet u een VBA-code toepassen, houd de toets ingedrukt ALT + F11 toetsen om de te openen Microsoft Visual Basic voor toepassingen venster.

7. In de Microsoft Visual Basic voor toepassingen venster, dubbelklik ThisDocument from de Project-Project om de modus te openen en kopieer en plak de volgende code in de lege module.

VBA-code: vervolgkeuzelijst met kleurcodes in de tabel van een Word-document invoegen:

Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
With ContentControl.Range
    If ContentControl.Title = "Status" Then
        Select Case .Text
            Case "Complete"
                .Cells(1).Shading.BackgroundPatternColor = wdColorRed
            Case "In Progress"
                .Cells(1).Shading.BackgroundPatternColor = wdColorGreen
            Case "Not Start"
                .Cells(1).Shading.BackgroundPatternColor = wdColorBlue
            Case Else
                .Cells(1).Shading.BackgroundPatternColor = wdColorAutomatic
        End Select
    End If
End With
End Sub

doc color-drop down 5

Notes: In de bovenstaande code, Status is de titelnaam wanneer u de vervolgkeuzelijst maakt, en Voltooien, In Behandeling, Niet starten zijn de items in de vervolgkeuzelijst, u kunt deze naar uw eigen instellingen wijzigen. En u kunt de kleur ook naar uw behoefte veranderen.

8. Sla dan het codevenster op en sluit het nu, wanneer u één item uit de vervolgkeuzelijst selecteert, wordt de relatieve kleur ervan gevuld met de cel, zie screenshot:

Doc kleur gecodeerd drop-down




Aanbevolen Word-productiviteitstools

Kutools For Word - meer dan 100 geavanceerde functies voor Microsoft Word, sla uw 50% tijd op

  • Gecompliceerde en herhaalde bewerkingen kunnen eenmalig worden uitgevoerd in seconden.
  • Voeg meerdere afbeeldingen in meerdere mappen tegelijk in Word-documenten in.
  • Voeg meerdere Word-bestanden samen en combineer ze tot één map met de door u gewenste volgorde.
  • Splits het huidige document in afzonderlijke documenten volgens kop 1, sectie-einde of andere criteria.
  • Converteer bestanden tussen Doc en Docx, Docx en PDF, verzameling tools voor algemene conversies en selectie, en zo verder ...
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Jericho · 22 days ago
    Can I color the entire corresponding row instead of just a cell?
    • To post as a guest, your comment is unpublished.
      skyyang · 9 days ago
      Hello, Jericho,
      The below code can help you to deal with your problem, please try it:(You can set the RGB color to your need)

      Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
      With ContentControl.Range
      If ContentControl.Title = "Status" Then
      Select Case .Text
      Case "Complete"
      .Rows.Shading.BackgroundPatternColor = RGB(255, 0, 0)
      Case "In Progress"
      .Rows.Shading.BackgroundPatternColor = RGB(0, 255, 64)
      Case "Not Start"
      .Rows.Shading.BackgroundPatternColor = RGB(0, 0, 255)
      Case Else
      .Rows.Shading.BackgroundPatternColor = wdColorAutomatic
      End Select
      End If
      End With
      End Sub
  • To post as a guest, your comment is unpublished.
    Raj · 3 months ago
    Instead of colors, could we use symbols? like if 'completed' display symbol with character code 252, if not started then symbol with character code 88 etc. can you share the vba code using symbols as display plz?
  • To post as a guest, your comment is unpublished.
    Patti · 6 months ago
    Could I modify this code to have it highlight any drop down choice without listing all of them out?
  • To post as a guest, your comment is unpublished.
    Shannon · 6 months ago
    Hi, Thank you for this. Is there a way of only changing the text color and not the entire cell?
    • To post as a guest, your comment is unpublished.
      skyyang · 6 months ago
      Hi, Shannon,
      To change the text color instead of the background color, the below VBA code can help you, please try it, hope it can help you!

      Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
      With ContentControl.Range
      If ContentControl.Title = "Status" Then
      Select Case .Text
      Case "Complete"
      .Cells(1).Range.Font.Color = wdColorRed
      Case "In Progress"
      .Cells(1).Range.Font.Color = wdColorGreen
      Case "Not Start"
      .Cells(1).Range.Font.Color = wdColorBlue
      Case Else
      .Cells(1).Range.Font.Color = wdColorAutomatic
      End Select
      End If
      End With
      End Sub
      • To post as a guest, your comment is unpublished.
        Bryan Rantala · 6 months ago
        Struggling here to apply this as a style rather than a color or shade.
  • To post as a guest, your comment is unpublished.
    mark · 8 months ago
    Could I enter custom colors? (rgb)
  • To post as a guest, your comment is unpublished.
    Paul · 8 months ago
    this worked grate! Thanks. I tried to apply same code to another drop down content box in same document and I'm having trouble. Don't know how to get tweo in the VBA window. I get 'compile error, Ambiguous name detected: Document_ContentControlOnExit'
  • To post as a guest, your comment is unpublished.
    Z · 9 months ago
    When I exit and reopen the program, I have to reenter the VBA code. How do I make it so that it saves?
    • To post as a guest, your comment is unpublished.
      skyyang · 9 months ago
      Hello,
      To save the vba code when opening the file next time, you should save the word file as Word Macro-Enabled Document format. Please try it, hope it can help you!