Eine Combobox mit VBA
Skill 3
Eine Combobox ist über die Symbolleiste ‚Steuerelement Toolbox‘ schnell in das Dokument gezogen (Kombinationsfeld).
Wie wird diese nun aber mit Inhalten gefüllt und wie werden darüber Dokumente aufgerufen?
Hier Lösungen in VBA:
Füllen der Combobox beim Aufrufen einer Arbeitsmappe:
Sie haben Combobox1 im Worksheet angelegt und wollen diese nun mit Einträgen füllen. Dies geschieht jeweils beim Öffnen der Arbeitsmappe:
Fügen Sie im VBA-Editor unter ‚Diese Arbeitsmappe‘ folgenden Code ein:
Sheets(„Tabelle1“).ComboBox1.AddItem („Dokument1“)
Die ComboBox1 auf dem Tabellenblatt ‚Tabelle1‘ wird also mit dem Eintrag ‚Dokument1‘ gefüllt.
Diese Reihe können Sie beliebig fortsetzen.
Nun müssen Sie noch dafür sorgen, dass tatsächlich etwas aufgerufen wird, wenn man die einzelnen Einträge auswählt.
Dieser Code wird im VBA-Editor unter der entsprechenden Tabelle, hier ‚Tabelle1‘ eingegeben:
Beginnend mit
Private Sub ComboBox1_Change()
gibt es dann je nach Dokumententyp mehrere Möglichkeiten. Nachfolgend einige davon:
Ein .pdf-Dokument im Internet Explorer öffnen:
If ComboBox1.Value = „Dokument1“ Then
Shell „explorer.exe “ & „C:\Verzeichnis\Datei.pdf“, vbNormalFocus
End If
Ein Word-Dokument (.doc) öffnen:
If ComboBox1.Value = „Dokument1“ Then
Set objWord = CreateObject(„Word.Application“)
With objWord
‚Word sichtbar machen—–
.Visible = True
‚Dokument öffnen——-
.Documents.Open („C:\Verzeichnis\Dateiname.doc“), , True
End With
End If
Ein Excel-Worksheet (.xls) öffnen:
If ComboBox1.Value = „Dokument1“ Then
Workbooks.Open („C:\Verzeichnis\Datei.xls“)
End If
Eine Internetseite öffen:
If ComboBox1.Value = „Dokument1“ Then
‚Internet-Explorer starten und Homepage aufrufen
Dim IeAppli
Set IeAppli = CreateObject(„InternetExplorer.Application“)
IeAppli.Visible = True
IeAppli.Navigate2 „http://www.irgendeinedomain.de“
End If
Sind alle Werte versorgt, folgt noch der Abschluß:
End Sub