kalterjava
Erfahrenes Mitglied
Hallo zusammen,
ich hatte fälschlicherweise meine Frage im Office-Forum platziert. Dort wurde mir auch geholfen, jedoch bekomm ich es so nicht hin...
http://www.tutorials.de/forum/offic...ular-soll-mehr-als-25-eintraege-anzeigen.html
Es geht darum, dass mein Vorgänger eine ini-Datei geschrieben hat, auf die viele Worddokumente zugreifen. Die einzelnen Werte wurde in eine Dropdown-Liste eingelesen. Das hat wunderbar funktioniert, bis die Anzahl von 25 nun überschritten wurde, weil Word 2003 nicht mehr wie 25 Elemente in der Dropdownliste anzeigt.
Ich kenn mich mit VB und den ganzen Werkzeugen nicht aus und bräuchte deshalb eure Hilfe. Ich habe hier nur gefunden, wie man ein txt-File in ein Listenfeld einliest. Hier handelt es sich jedoch um eine ini.
So ist die ini-Datei aufgebaut:
Und das steht im Visual Basic Editor (nochmal angemerkt - nicht von mir)
Wenn jmd. eine bessere Lösung hätte - bin für alles offen, da ich diesen Code ohnehin in jedem Dokument ersetzen muss, weil es mit der Dropdownliste nicht mehr geht.
Thanks im Voraus.
Grüße
kalterjava
ich hatte fälschlicherweise meine Frage im Office-Forum platziert. Dort wurde mir auch geholfen, jedoch bekomm ich es so nicht hin...
http://www.tutorials.de/forum/offic...ular-soll-mehr-als-25-eintraege-anzeigen.html
Es geht darum, dass mein Vorgänger eine ini-Datei geschrieben hat, auf die viele Worddokumente zugreifen. Die einzelnen Werte wurde in eine Dropdown-Liste eingelesen. Das hat wunderbar funktioniert, bis die Anzahl von 25 nun überschritten wurde, weil Word 2003 nicht mehr wie 25 Elemente in der Dropdownliste anzeigt.
Ich kenn mich mit VB und den ganzen Werkzeugen nicht aus und bräuchte deshalb eure Hilfe. Ich habe hier nur gefunden, wie man ein txt-File in ein Listenfeld einliest. Hier handelt es sich jedoch um eine ini.
So ist die ini-Datei aufgebaut:
PHP:
[module]
Sort=Yes
L1="BWL"
L2="MM"
L3="VWL"
usw
[gruppe]
L1="Gruppe A"
L2="Gruppe B"
L3="Gruppe C"
usw
Und das steht im Visual Basic Editor (nochmal angemerkt - nicht von mir)
PHP:
'*** Beginn des anpassbaren Teils
Private Const iniDatei = "\Module.ini"
'*** Ende des anpassbaren Teils
Sub AutoNew()
Dim strWorkgroupTemplates As String
On Error Resume Next
strWorkgroupTemplates = Options.DefaultFilePath(wdWorkgroupTemplatesPath)
Datei = strWorkgroupTemplates & iniDatei
If Dir(Datei) = "" Then
MsgBox "Die Datei mit dem Namen " & iniDatei & " ist nicht vorhanden.", vbCritical
Exit Sub
End If
Dim FF As FormField
For Each FF In ActiveDocument.FormFields
If FF.Type = wdFieldFormDropDown Then
DropdownFormularfelderLaden FF.Name
End If
Next
End Sub
Private Sub DropdownFormularfelderLaden(ByVal FeldName As Variant)
Dim strWorkgroupTemplates As String
strWorkgroupTemplates = Options.DefaultFilePath(wdWorkgroupTemplatesPath)
Datei = strWorkgroupTemplates & iniDatei
Dim x() As String
j = -1
For i = 1 To 25
tmp = System.PrivateProfileString(Datei, FeldName, "L" & CStr(i))
If tmp = "" Then
If i = 1 Then Exit Sub
Else
j = j + 1
ReDim Preserve x(j)
x(j) = tmp
End If
Next i
If j > 0 And System.PrivateProfileString(Datei, FeldName, "Sort") = "Yes" _
Then
WordBasic.SortArray x()
End If
With ActiveDocument.FormFields(FeldName).DropDown.ListEntries
.Clear
For i = 0 To UBound(x)
.Add x(i)
Next i
End With
End Sub
Public Sub fill_in_modul()
On Error Resume Next
ActiveDocument.FormFields("module_text").Result = ActiveDocument.FormFields("module").Result
End Sub
Public Sub fill_in_gruppe()
On Error Resume Next
ActiveDocument.FormFields("gruppe_text").Result = ActiveDocument.FormFields("gruppe").Result
End Sub
Wenn jmd. eine bessere Lösung hätte - bin für alles offen, da ich diesen Code ohnehin in jedem Dokument ersetzen muss, weil es mit der Dropdownliste nicht mehr geht.
Thanks im Voraus.
Grüße
kalterjava