Sortierung im Dropwonfeld

11/01/2008 - 09:18 von Som | Report spam
Hallo Leute,

ich hab mal wieder ne richtig schöne Newbie-Frage.
Ich hab da ein Formular in dem durch Auswahl in einem Feld ein anderen
Felder bestimmte Inhalte vorgibt. Unten in dem Macrobeispiel in Zeile 7 und
22 werden je nach Case "Institut" unterschiedliche Eintràge in die Dropdowns
"A" und "B" vorgeben. Um es dem Ausfüllenden leichter zu machen werden beide
Felder initial mit "bitte auswàhlen!" befüllt. Funktioniert auch wunderbar!
Das Ganze hat nur einen Schönheitsfehler: Wenn man das Dropdown aufmacht
sieht das ungefàhr so aus:

bitte auswàhlen! | v |
10
12
13
14
15
bitte auswàhlen!

Das ist aber so nicht sehr schön. Nun meine Frage:
Ist es möglich den vorausgewàhlten Listenpunkt "bitte auswàhlen!" (Zeilen 19
+ 31) entweder ganz oben in der Liste zu haben oder ganz rauszunehmen????

Case "Institut"
With Application.ActiveDocument.FormFields("Mandant")
.DropDown.ListEntries.Clear
.Result = "Mandantennummer"
.Enabled = True
End With
With Application.ActiveDocument.FormFields("A")
With .DropDown
With .ListEntries
.Clear
.Add Name:="10"
.Add Name:="11"
.Add Name:="12"
.Add Name:="13"
.Add Name:="14"
.Add Name:="15"
End With
End With
.Result = "Bitte auswàhlen!"
.Enabled = True
End With
With Application.ActiveDocument.FormFields("B")
With .DropDown
With .ListEntries
.Clear
.Add Name:="20"
.Add Name:="21"
.Add Name:="22"
End With
End With
.Result = "Bitte auswàhlen!"
.Enabled = True
End With
 

Lesen sie die antworten

#1 Thomas Gahler
11/01/2008 - 11:47 | Warnen spam
Hallo Som


Ist es möglich den vorausgewàhlten Listenpunkt "bitte auswàhlen!" (Zeilen
19
+ 31) entweder ganz oben in der Liste zu haben oder ganz rauszunehmen????


ganz oben kriegst du ihn hin, wenn er als erster in die Liste aufgenommen
wird.



With .ListEntries
.Clear
.Result = "Bitte auswàhlen!"
.Add Name:="10"
.Add Name:="11"
.Add Name:="12"
.Add Name:="13"
.Add Name:="14"
.Add Name:="15"
End With
End With
.Result = "Bitte auswàhlen!"


Weg kriegst du ihn wohl nur, wenn du beim Eintritt in das Formularfeld ein
makro aufrufst das diesen Eintrag entfern und .Result = "" setzt. Beim
verlassen dann prüfen ob .Result immer noch leer ist, dann wieder eintragen.
Wirst du aber nie zu 100% befriedigend hinkriegen.



Thomas Gahler
MVP für WordVBA
Co-Autor von »Microsoft Word-Programmierung.
Das Handbuch« (MS Press)


- Windows XP (SP2), Office XP (SP3)

Ähnliche fragen