Note: The other languages of the website are Google-translated. Back to English

Hoe maak ik afhankelijke vervolgkeuzelijsten in een Word-document?


Zoals de linkerschermafbeelding laat zien, moet u de keuzes in de tweede vervolgkeuzelijst beperken op basis van de optie in de eerste vervolgkeuzelijst, hoe kunt u dat doen? Dit artikel toont u een methode om afhankelijke vervolgkeuzelijsten in een Word-document te maken.

Maak afhankelijke vervolgkeuzelijsten in Word met VBA-code


Maak afhankelijke vervolgkeuzelijsten in Word met VBA-code

De onderstaande VBA-code kan u helpen bij het maken van een afhankelijke vervolgkeuzelijst in een Word-document. Volg de instructies stap voor stap.

1. Ten eerste moet u twee vervolgkeuzelijsten in uw Word-document invoegen. Klik Ontwikkelaar > Verouderde formulieren > Vervolgkeuzelijst formulierveld. Zie screenshot:

2. Klik met de rechtermuisknop op de eerste vervolgkeuzelijst (deze vervolgkeuzelijst moet de bovenliggende lijst zijn) en klik op Eigenschappen. Zie screenshot:

3. In de opening Vervolgkeuzelijst Formulierveldopties dialoogvenster, moet u:

3.1 Voer de categorie in het Vervolgkeuzelijst in en klik op de Toevoegen knop, herhaal de handeling totdat alle categorieën zijn toegevoegd aan de Items in vervolgkeuzelijst.

3.2 Voer in ddfood in de Bladwijzer doos.

3.3 Klik op de OK knop. Zie screenshot:

4. Klik met de rechtermuisknop op de tweede vervolgkeuzelijst en klik op Vastgoed om zijn Vervolgkeuzelijst Formulierveldopties dialoogvenster en voer in het dialoogvenster ddCategorie in de Bladwijzer vak en klik op het OK knop. Zie screenshot:

5. druk de anders + F11 toetsen om de te openen Microsoft Visual Basic voor toepassingen venster.

6. In de Microsoft Visual Basic voor toepassingen venster klikt Invoegen > module, kopieer vervolgens de VBA-code naar het modulevenster.

VBA-code: maak een afhankelijke vervolgkeuzelijst in Word

Sub Populateddfood()
'Update by Extendoffice 2018/10/25
    Dim xDirection As FormField
    Dim xState As FormField
    On Error Resume Next
    Set xDirection = ActiveDocument.FormFields("ddfood")
    Set xState = ActiveDocument.FormFields("ddCategory")
    If ((xDirection Is Nothing) Or (xState Is Nothing)) Then Exit Sub
    With xState.DropDown.ListEntries
        .Clear
        Select Case xDirection.Result
            Case "Fruit"
                .Add "Apple"
                .Add "Banana"
                .Add "Peach"
                .Add "Lychee"
                .Add "Watermelon"
            Case "Vegetable"
                .Add "Cabbage"
                .Add "Onion"
            Case "Meat"
                .Add "Pork"
                .Add "Beef"
                .Add "Mutton"
        End Select
    End With
End Sub

Opmerkingen:

1. Wijzig in de code de items in elk geval naar behoefte.

2. ddfood en ddCategorie moeten overeenkomen met de bladwijzeropties die u in de bovenstaande twee hebt ingevoerd Vervolgkeuzelijst Formulierveldopties dialoogvensters.

7. Sla de code op en ga terug naar het document.

8. Klik met de rechtermuisknop op de eerste vervolgkeuzelijst en klik op Vastgoed om de te openen Vervolgkeuzelijst Formulierveldopties dialoog venster. Selecteer in het dialoogvenster de bovenstaande macronaam (hier is Popolateddfood) uit het afrit vervolgkeuzelijst en klik vervolgens op het OK knop.

9. Klik nu Ontwikkelaar > Beperken bewerken zoals hieronder getoond screenshot.

10. In de Beperken bewerken paneel, moet u:

10.1) Controleer het Sta alleen dit type bewerking toe in het document doos;

10.2) Selecteer Formulieren invullen optie uit de vervolgkeuzelijst;

10.3) Klik op de Ja, Start Enforcing Protection knop;

10.4) In de Begin met het afdwingen van bescherming Voer het wachtwoord in en klik op het OK knop. Zie screenshot:

Nu wordt een afhankelijke vervolgkeuzelijst gemaakt. Bij het selecteren van Fruit in de eerste vervolgkeuzelijst, kunnen alleen de fruitcategorieën worden geselecteerd in de tweede.


Aanbevolen Word-productiviteitstools

 

Kutools voor Word - meer dan 100 geavanceerde functies voor Word, bespaar 50% tijd

  • Ingewikkelde en herhaalde bewerkingen kunnen een eenmalige verwerking in seconden worden uitgevoerd.
  • Voeg meerdere afbeeldingen in verschillende mappen tegelijk in een Word-document in.
  • Voeg meerdere Word-bestanden in mappen samen en combineer ze tot één met de door u gewenste volgorde.
  • Splits het huidige document in afzonderlijke documenten op basis van koptekst, sectie-einde of andere criteria.
  • Converteer bestanden tussen Doc en Docx, Docx en PDF, verzameling tools voor algemene conversies en selectie, enzovoort ...
Comments (27)
Nog geen beoordelingen. Beoordeel als eerste!
Deze opmerking is gemaakt door de moderator op de site
Is er een vergelijkbare code om bijna precies hetzelfde te doen, behalve dat een tekstformulierveld automatisch wordt ingevuld, afhankelijk van de vervolgkeuzelijst? Kiest u bijvoorbeeld een specifiek bedrijf in de vervolgkeuzelijst en laat u automatisch een tekstveld invullen met de stad waar het bedrijf is gevestigd?
Deze opmerking is gemaakt door de moderator op de site
Goede dag,
Sorry kan je daarbij helpen. Bedankt voor je reactie.
Deze opmerking is gemaakt door de moderator op de site
Kun je dit toevoegen aan meerdere gebieden op een enkele pagina die uit meerdere secties bestaat? Ik heb het proces met succes kunnen voltooien in één sectie van mijn document, maar wanneer ik probeer hetzelfde proces te voltooien terwijl ik op dezelfde pagina ben, maar in een andere sectie van mijn document en met nieuwe dropdown-opties, alleen mijn eerste toegevoegde vakken werken, niet die in het tweede deel..
Deze opmerking is gemaakt door de moderator op de site
Hallo ingrid,
Stel dat u drie groepen afhankelijke vervolgkeuzelijsten in uw document hebt. Als u wilt dat alle afhankelijke vervolgkeuzelijsten van kracht worden, past u de onderstaande VBA-code toe en voert u de onderstaande instellingen uit:

In de stap 4 en 5 die we in het artikel noemden, moet u nu de volgende wijzigingen aanbrengen:
1. Ga voor de eerste groep van de afhankelijke vervolgkeuzelijsten naar het eigenschappenvenster van elke vervolgkeuzelijst en geef de bladwijzer afzonderlijk op als ddfood1 en ddCategory1;
2. Ga voor de tweede groep van de afhankelijke vervolgkeuzelijsten naar het eigenschappenvenster van elke vervolgkeuzelijst en specificeer de bladwijzer afzonderlijk als ddfood2 en ddCategory2;
2. Ga voor de derde groep van de afhankelijke vervolgkeuzelijsten naar het eigenschappenvenster van elke vervolgkeuzelijst en geef de bladwijzer afzonderlijk op als ddfood3 en ddCategory3;

Ga dan precies door zoals we in het artikel hebben gegeven om de hele instellingen te voltooien.

VBA-code:
Sub-bevolkt voedsel()
'Bijwerken door' Extendoffice 2019 / 03/ 18
Dim xDirection As FormField
Dim xState als formulierveld
Dim xRng als bereik
Dim xFoodBM, xCategoryBM As String
Stel xRng = Selectie.Bereik in
On Error Resume Next
Voor i = 1 Naar ActiveDocument.FormFields.Count
xFoodBM = "ddfood" & i
xCategoryBM = "ddCategory" & i
Stel xDirection = ActiveDocument.FormFields(xFoodBM) in
Stel xState = ActiveDocument.FormFields(xCategoryBM) in
If (Not (xState Is Nothing)) En (Not (xDirection Is Nothing)) Dan
Met xState.DropDown.ListEntries
.Duidelijk
Selecteer Case xDirection.Resultaat
Koffer "Fruit"
.Voeg "Appel" toe
.Voeg "Banaan" toe
.Voeg "Perzik" toe
.Voeg "Lychee" toe
.Voeg "Watermeloen" toe
Koffer "Groente"
.Voeg "Kool" toe
.Voeg "Ui" toe
Koffer "Vlees"
.Voeg "Varkensvlees" toe
.Voeg "Rundvlees" toe
.Voeg "schapen" toe
End Select
Eindigt met
End If
Stel xDirection = Niets in
Stel xState = Niets in
Volgende
xRng.Selecteer
End Sub
Deze opmerking is gemaakt door de moderator op de site
kan dit in oudere versies van Word of moet het worden opgeslagen als een bepaald documenttype?
Deze opmerking is gemaakt door de moderator op de site
Hoi Mary,
Welke versie bedoel je?
Deze opmerking is gemaakt door de moderator op de site
Hi There,
zijn er beperkingen met de naam in het veld (bijv. 2 woorden, of gebruik van speciale tekens)?
Zoals veld A (bedrijfsnaam) Veld B (naam directeur, zoals Jack Black).
Bedankt!
Deze opmerking is gemaakt door de moderator op de site
Hallo Marc,
Ja, er zijn beperkingen met de naam in het veld.
Voor meerdere woorden met spaties moet u de spaties vervangen door niet-lijntjes zoals Company_Name.
En bladwijzernaam mag geen van de speciale tekens bevatten, zoals / \ : * ? " < > |
Bedankt voor je commentaar.
Deze opmerking is gemaakt door de moderator op de site
Hoi,

Hoe pakken we tekstomloop aan? Ik heb de stap gevolgd en het werkt prima, behalve dat wanneer de tweede lijst te lang is, deze verder gaat dan de pagina. Is er een manier om het automatisch te laten inpakken?
Deze opmerking is gemaakt door de moderator op de site
Hallo Paul,
Sorry kan je daar nog niet mee helpen. Bedankt voor je reactie.
Deze opmerking is gemaakt door de moderator op de site
HI Ik heb de drop-downs aan het werk. ik heb een vraag
Wanneer ik de selectie voor de eerste vervolgkeuzelijst maak, is er dan een manier om de coördinerende en gerelateerde selecties voor de volgende vervolgkeuzelijsten te automatiseren? Bijvoorbeeld. Ik heb een vervolgkeuzelijst voor ouders, de twee vervolgkeuzelijsten voor kinderen zijn respectievelijk Titel en Telefoonnummer. Wanneer ik de naam van de advocaat selecteer, wil ik dat de vervolgkeuzelijsten voor kinderen automatisch de titel en het telefoonnummer invullen. Hoe zou ik dat kunnen doen?

Dank bij voorbaat.

Sylvia
Deze opmerking is gemaakt door de moderator op de site
Goede dag,
Sorry kan je daar nog niet mee helpen. Bedankt voor je reactie.
Deze opmerking is gemaakt door de moderator op de site
Is er een manier om meerdere categorievelden toe te voegen op basis van één selectie? ik moet bijvoorbeeld "Wijn" zeggen, maar ik moet 5 opties (fruitig, rood, sterk, enz.) kunnen selecteren uit de 10 mogelijke opties in de tweede vervolgkeuzelijst. Ik heb de bovenstaande instructies gevolgd en werkt goed op één veld met slechts één ander afhankelijk veld. Maar ik heb 5 afhankelijke velden nodig, allemaal geactiveerd door het ene veld in dit geval "wijn". Ik dupliceer het vervolgkeuzeveld, het werkt niet, ik probeer een tweede veld aan de code toe te voegen, maar weet niet zeker hoe: ActiveDocument.FormFields ("ddCategory") en ("ddCategory2")
Deze opmerking is gemaakt door de moderator op de site
Hallo Ed,
Sorry kan je daar niet mee helpen. Bedankt voor je reactie.
Deze opmerking is gemaakt door de moderator op de site
Hallo, Hoe kan ik het categorievak dupliceren? Ik heb de bovenstaande code gebruikt en werkt goed, maar alleen voor één doos. Wat moet ik doen in de code als ik bijvoorbeeld tot 3 vruchten moet selecteren nadat ik de groep Fruit heb geselecteerd? Ik dupliceer het veld dat ik heb gemaakt, maar slechts één werkt.
---------------------
kies
FRUIT: banaan
appel
"selecteer item"


----------------------------------
kies
Groente: Kool
ui
"selecteer item"
Deze opmerking is gemaakt door de moderator op de site
Bedankt voor deze zeer nuttige bron.

Is het mogelijk om dezelfde afhankelijke vervolgkeuzelijst meerdere keren te herhalen binnen een formulier?

Ik heb de formuliervuller nodig om een ​​categorie toe te wijzen aan elke nieuwe rij (maar met elke keer dezelfde opties). Ik heb met succes de vervolgkeuzelijsten gemaakt, maar wanneer ik het bewerken beperk om te testen, lijken ze zichzelf opnieuw in te stellen terwijl ik door de rijen werk.

Bedankt
Amy
Deze opmerking is gemaakt door de moderator op de site
Ik gebruik dezelfde code, maar de tekst waarmee ik de ddcategory vervang, heeft meer dan 100 woorden. Is er een manier om de tekst in te pakken om te voorkomen dat deze van de pagina verdwijnt en verdwijnt?
Deze opmerking is gemaakt door de moderator op de site
Ik heb hetzelfde probleem!! :0
Deze opmerking is gemaakt door de moderator op de site
من همه مراحل رو رفتم ولی درآخر وقتی از لیست اول یه استان رو انتخاب می کنم تویه لیست دوم فقط شهر های اون استان رو نمیاره
باید بکنم؟
Deze opmerking is gemaakt door de moderator op de site
Hallo, om de een of andere reden kan ik niets anders in het word-bestand wijzigen als de vervolgkeuzelijst actief is. Is er een manier om dat te vermijden?

Bedankt
Deze opmerking is gemaakt door de moderator op de site
Ik heb hetzelfde probleem heeft iemand hier mee kunnen helpen
Deze opmerking is gemaakt door de moderator op de site
Dit was zeer nuttig, bedankt.
Ik heb een vraag, is er een manier om de code aan te passen, zodat wanneer ik een nieuw item uit de eerste vervolgkeuzelijst selecteer, het afhankelijke item wordt gewist?
Deze opmerking is gemaakt door de moderator op de site
Sorry voor de late reactie, kwam vandaag pas op deze pagina terecht :-)
Dat doet het al. De eerste instructie in de Select case ... End select constructie wist de tweede lijst. Als aan geen van de criteria wordt voldaan, wordt er niets toegevoegd.
Deze opmerking is gemaakt door de moderator op de site
Hallo, thx voor de gedetailleerde tutorial, maar ik heb een vraag omdat het woordsjabloon voor anderen is, 
Deze opmerking is gemaakt door de moderator op de site
Hallo, veel dank voor de gedetailleerde tutorial, maar ik heb een vraag omdat het woordsjabloon voor anderen is. U noemde de beveiligingsmodus en een wachtwoord is een must, dit kan doen als ik ze het wachtwoord vertel, dan is er een conflict: er zijn enkele andere lege plekken die moeten worden ingevuld, dit kan alleen worden gedaan als de beveiligingsmodus is uit. Wat moet ik doen? Is er een methode om aan beide 2 behoeften te voldoen?
Deze opmerking is gemaakt door de moderator op de site
Hallo,

ist das ganze auch unter Outlook möglich. Leider bekomme ich das so nicht hin da die Eigenschaften des Dropdown Menüs ganz anders aussehen.

Ich wollte unter Aufgaben einen Reparaturauftrag erstellen wo man Gebäude,Bereich en dan Zimmernummer of Bezeichnung auwählen kann.

Is het möglich in Outlook/Aufgaben?



dank u
Deze opmerking is gemaakt door de moderator op de site
Hoi,
U kunt een vervolgkeuzelijst maken met een aangepast veld in het Outlook-taakvenster door de stappen in dit artikel te volgen:
Hoe voeg ik een vervolgkeuzelijst toe met aangepast opgeslagen in het taakvenster van Outlook?
https://www.extendoffice.com/documents/outlook/4453-outlook-custom-fields-tasks-drop-down.html
Of maak een vervolgkeuzelijst in Word en kopieer en plak deze naar behoefte in het taakvenster.
Maar als u afhankelijke vervolgkeuzelijsten in Outlook Task wilt maken, is er nog geen methode gevonden.
Het spijt me dat.
Er zijn nog geen reacties geplaatst
Laat uw commentaar
Posten als gast
×
Beoordeel dit bericht:
0  Personages
Voorgestelde locaties