Hallo Xen55
http://www.uploadagent.de/files/1154198603/ComboProb…
Das ist die Datei auf das Problem beschränkt.
Wie befinden uns in Excel-VBA. Wie gesagt, wenn ich diese
Datei aufrufe dann ist die Combobx leer. Erst wenn ich einen
Wert auswähle bleibt er auch stehen. Würde gerne erreichen mit
oder ohne VBA das ich bei einem öffnen dieser Datei meine
Combobox inhalt den ich zuletzt gewählt habe aufzeigt. In
Linkedcell zeigt er auch mit der Zahl (0 1 2) an welche ich
als letztes angwählt habe.
Also bei mir (Win98/Excel97) tritt das gleiche Pänomen bei deiner Datei auf. Die Box wird noch kurzzeitig mit dem zuletzt eingestellten Wert angezeigt und dann verschwindet der Wert.
Die Ursache ist scheinbar, dass du als Wert für die Eigeschaft „BoundColumn“ 0 gewählt hast. In diesem Fall wird nicht der in der Liste stehende Wert in die LinkedCell eingetragen, sondern die Nummer des Eintrags beginnend bei 0.
Beim Öffnen der Datei wird dann der Wert in LinkedCell mit der Auswahlliste verglichen. Gibt es eine Übereinstimmung, dann wird der Inhalt auch in der Eigenschat „Text“ eingetragen und im Auswahlfeld angezeigt - falls nicht, dann eben nichts. Scheinbar hat man im Hause Microsoft vergessen die Variante Boundcolumn=0 bei der Initialisierung der Combobox zu berücksichtigen.
Folgendes Workbook_Open Makro initialisiert den Wert der Combo-Box. Es muß im VBA-Editor im VBA-Projekt unter „DieseArbeitsmappe“ eingefügt werden.
Gruß
Franz
Private Sub Workbook\_Open()
Dim wks As Worksheet, Element As OLEObject, Combotext As String
Set wks = Sheets("Tabelle1")
With wks
Set Element = .OLEObjects("Combobox1")
Combotext = Application.WorksheetFunction.Index(.Range(Element.ListFillRange), \_
.Range(Element.LinkedCell).Value + 1, 1)
Element.Object.Text = Combotext
End With
End Sub