Anzeige
Archiv - Navigation
1060to1064
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Variable für Auswahlfeld

Variable für Auswahlfeld
21.03.2009 09:52:58
miss18
Guten Morgen liebes Forum,
ich habe dieses Makro, welches mir sämtliche Tabellenblätter in Auswahlfelder einfügt, sodass ich bei der Übersicht auf das gewünschte Tabellenblatt springen kann.
Funktioniert perfekt dank dieses Forums ;)
Jetzt habe ich eine Frage:
Da es sehr viele Tabellenblätter sind, haben wir die Namen abgekürzt (wenn wir die Namen im Tabellenbltt ausschreiben müssten wäre es zu lang scrollen und so)
Leider stehen jetzt in den Auswahlfeldern auch die Abkürzungen.
Ist es möglich, dass die Abkürzungen weiters in den Tabellenblättern stehen, aber in den Auswahlfeldern die kompletten Namen eingeblendet werden?
Vielen Dank im Voraus.
LG miss18
Option Explicit

Public Sub getSheets()
'Übersicht
'Übersicht Makro
Dim objWs As Worksheet
Dim var1 As Variant, var2 As Variant, var3 As Variant, var4 As Variant, var5 As Variant, var6  _
As Variant, var7 As Variant
'Tabellengruppen
Const cstrGroup1 As String = "AAA,BB,CC"
Const cstrGroup2 As String = "DD,EE,FF,GG,HH,II"
Const cstrGroup3 As String = "JJ,KK,LL,MM,NN,OO,PP"
Const cstrGroup4 As String = "QQ,RR,SS,TT"
Const cstrGroup5 As String = "UU"
Const cstrGroup6 As String = "VV,XX,ZZZ"
Const cstrGroup7 As String = "ABC,DEF,KLM"
var1 = Split(cstrGroup1, ",")
var2 = Split(cstrGroup2, ",")
var3 = Split(cstrGroup3, ",")
var4 = Split(cstrGroup4, ",")
var5 = Split(cstrGroup5, ",")
var6 = Split(cstrGroup6, ",")
var7 = Split(cstrGroup7, ",")
'Auswahlfelder
With Sheets("Übersicht")
.ComboBox1.Clear
.ComboBox1.AddItem "Computer"
.ComboBox2.Clear
.ComboBox2.AddItem "Handys"
.ComboBox3.Clear
.ComboBox3.AddItem "Solutions"
.ComboBox4.Clear
.ComboBox4.AddItem "Internet"
.ComboBox5.Clear
.ComboBox5.AddItem "Projekte"
.ComboBox6.Clear
.ComboBox6.AddItem "Allgemeines"
.ComboBox7.Clear
.ComboBox7.AddItem "Kunden"
For Each objWs In ThisWorkbook.Worksheets
If Not objWs.Name = .Name Then
If IsNumeric(Application.Match(objWs.Name, var1, 0)) Then
.ComboBox1.AddItem objWs.Name
End If
If IsNumeric(Application.Match(objWs.Name, var2, 0)) Then
.ComboBox2.AddItem objWs.Name
End If
If IsNumeric(Application.Match(objWs.Name, var3, 0)) Then
.ComboBox3.AddItem objWs.Name
End If
If IsNumeric(Application.Match(objWs.Name, var4, 0)) Then
.ComboBox4.AddItem objWs.Name
End If
If IsNumeric(Application.Match(objWs.Name, var5, 0)) Then
.ComboBox5.AddItem objWs.Name
End If
If IsNumeric(Application.Match(objWs.Name, var6, 0)) Then
.ComboBox6.AddItem objWs.Name
End If
If IsNumeric(Application.Match(objWs.Name, var7, 0)) Then
.ComboBox7.AddItem objWs.Name
End If
End If
Next
.ComboBox1.ListIndex = 0
.ComboBox2.ListIndex = 0
.ComboBox3.ListIndex = 0
.ComboBox4.ListIndex = 0
.ComboBox5.ListIndex = 0
.ComboBox6.ListIndex = 0
.ComboBox7.ListIndex = 0
End With
End Sub


10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Beispieldatei
21.03.2009 10:31:18
Tino
Hallo,
vielleicht wäre eine Beispieldatei in diesem Fall angebracht.
Damit könnte man mal rumtesten.
Gruß Tino
AW: Beispieldatei
21.03.2009 11:39:02
miss18
Hallo,
hier ist eine kleines Beispiel. Meine Datei ist so aufgebaut.
Anstatt dem AAA, BBB würde ich jetzt gerne im Auswahlfeld die kompletten Namen stehen haben.
https://www.herber.de/bbs/user/60539.xls
AW: Beispieldatei
21.03.2009 12:07:46
Tino
Hallo,
mir ist etwas dazu eingefallen.
Ich habe eine Funktion eingebaut, mit dieser wird der lange Name der in der Combo angezeigt wird dem kurzen der in der Datei als Tabellenname verwendet wird zugeordnet.
Schau es Dir einfach mal an, auch wie ich den Aufruf der Funktion verwende.
https://www.herber.de/bbs/user/60540.xls
Gruß Tino
Anzeige
AW: Beispieldatei
21.03.2009 12:39:43
miss18
Hallo Tino,
danke zunäcsht einmal
Hat es bei Dir funktioniert, denn bei mir passiert nix. Die Abkürzungen werden bei mir immer noch im Auswahlfeld angezeigt. Die definierten Namen erscheinen leider nicht auf.
https://www.herber.de/bbs/user/60542.xls
AW: Beispieldatei
21.03.2009 12:50:43
Daniel
Hi
du kannst Comboboxen 2- und mehrspaltig aufbauen, dh die Werte der einen Spalte werden angezeigt, aber die Werte einer anderen Spalte werden als Ergebnis zurückgegeben.
wichtig sind hierfür die Comboboxeingenschaften:
- ColumnCount (Anzahl der Spalten)
- BoundColumn (Spalte, die als Ergebnis nach .Value zurückgegeben wird)
- ColumnWitdh (legt fest, wie breit die einzelnen Spalten sind, 0 blendet aus.
die anzuzeigenden Tabellenblattnamen müssen allerdings irgendwo hinterlegt sein, am besten im Betreffenden Tabellenblatt in einer bestimmten Zelle (im Beispiel A1):
https://www.herber.de/bbs/user/60543.xls
Gruß, Daniel
Anzeige
AW: Beispieldatei
21.03.2009 14:09:53
miss18
@ Daniel:
Danke Daniel für Deinen Tipp.
Ein schönes WE noch.
AW: Beispieldatei
21.03.2009 15:42:17
miss18
Hallo Daniel,
danke für deinen Tipp.
Schönes WE noch.
AW: Beispieldatei
21.03.2009 12:54:35
Tino
Hallo,
daher habe ich geschrieben, dass Du Dir den Aufruf der Funktion auch anschauen musst.
Du hast einfach vergessen den Aufruf anzupassen.
Beim füllen der Combo

.ComboBox4.AddItem NamenTab(objWs.Name, True)


und im Ereignis der Combo


… Sheets(NamenTab(ComboBox2.Text, False)).Range("A1")


Gruß Tino

AW: Beispieldatei
21.03.2009 13:35:32
miss18
Hallo Tino,
tut mir leid ich bin absoluter Anfänger :(
Aber jetzt hat es geklappt dankt Dir. Vielen vielen Dank. Ich liebe dieses Forum. Ihr seid super.
Danke und ein schönes WE noch.
Anzeige
Daniel hat auch noch eine Version. oT.
21.03.2009 13:42:16
Tino

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige