Keuzelijst toont &-teken niet

Status
Niet open voor verdere reacties.

Marie01

Gebruiker
Lid geworden
21 jun 2008
Berichten
100
Ik maak in Word een keuzelijst in VBA (zie hieronder), daarin komt de term P&O voor. Zowel in de keuzelijst als in het document komt er PO te staan. Hij herkent het &-teken niet.
Weet iemand hier een oplossing voor?
Ik heb geprobeerd met: P&" & "&O Services, "
Dan staat het in de keuzelijkst inderdaad goed maar in het document staat dan nog steeds: PO Services.

HTML:
Sub FieldresultAfdeling()
Dim strAfdeling As String
strAfdeling = ActiveDocument.FormFields("blwOrganisatie").Result
Select Case strAfdeling
 
    Case "Directie Services, "
    ActiveDocument.Bookmarks("blwAfdelingen2").Select
    Selection.FormFields.Add Range:=Selection.Range, Type:=wdFieldFormDropDown
    Selection.PreviousField.Select
    Selection.FormFields(1).Name = "Lijst"
    'Selection.FormFields(1).ExitMacro = "Afdelingen"
 
    Selection.FormFields("Lijst").DropDown.ListEntries.Clear
    With Selection.FormFields("Lijst").DropDown.ListEntries
    .Add Name:="Keuzelijst"
    .Add Name:="Directiesecretariaat, "
    .Add Name:="Projectmanagement Services, "
    .Add Name:="Interne Services, P&O Services, "
     Selection.FormFields("Lijst").DropDown.Value = 1

 End With
 
Laatst bewerkt:
P&&o

P&&O geeft inderdaad P&O goed weergegeven in de keuzelijst, maar in het document komt dan PO Services te staan.
 
Hoe wordt het resultaat teruggeven? als een string? Het ziet er naar uit dat de eindontvanger de string opnieuw interpreteert. Ik moet eerlijk bekennen dat ik zo geen workaround weet om dat te voorkomen.

Het is zeker op te lossen, maar dat zijn allemaal lapmiddelen (je kunt de tweede ampersand weer tussenvoegen). Mogelijk is er een elegantere methode, maar dan kan ik die niet zo vinden. Bij de meeste andere talen wordt een ge-escapete string opgeslagen met de escape of als een string literal, maar ik kan voor VBA niets bedenken
 
keuzelijst

Ik zie in het Word document de keuzelijst met het pijltje.
Ik kies voor: P&O services.
Als ik dan dit keuzelijstveld verlaat, zie ik PO services staan (als tekst van het veld).
Er wordt dus verder niets mee gedaan. :confused:

(Ik werk op twee omgevingen en kan vandaag geen schermafdruk maken om te verduidelijken)
 
Marie,

Biedt onderstaande code de oplossing:

Code:
     .Add Name:="Interne Services, P" & Chr(38) & "O Services, "
 
Helaas

Helaas is dit ook de oplossing niet. Ik vergeet maar en typ "en"
 
Helemaal juiste oplossing, want het kan ook helemaal niet.... Zie deze link. Ik zou zeggen: zet de post maar op Opgelost :(
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan