Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
532to536
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
532to536
532to536
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ärger mit eigener Symbolleiste

Ärger mit eigener Symbolleiste
20.12.2004 10:49:36
Peter
Hallo,
ich versuch es nochmal.
Frage zur Symbolleiste:
Die Übernahme der Dateinamen funktioniert.
Ich bekomme die Dateinamen jedoch nicht in
die Combobox. Es öffnet sich eine seperate Liste
mit den Dateinamen.
Ich nehme an, dass es irgendwie mit dem Listindex geregelt
wird. Aber ich komm nicht drauf wie?
Auf Wunsch stelle ich gern nochmal die vollst. Prozedur
zur Erstellung der Symbolleiste ins Forum.
Peter
With UntZ1.CommandBar.Controls.Add(Type:=msoControlDropdown)
DatName = Dir("*." & DatTyp)
Do While DatName ""
n = n + 1
ReDim Preserve FileArray(1 To n)
FileArray(n) = DatName
DatName = Dir()
Loop
For i = n To 1 Step -1
If InStr(1, FileArray(i), ".XL", 1) Then
.AddItem (FileArray(i))
End If
Next i
.ListIndex = n
.Width = 80
.DropDownLines = 5
.DropDownWidth = 60
.TooltipText = "alte Jahreslisten öffnen"
.OnAction = "DateienLaden"
End With

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ärger mit eigener Symbolleiste
Ramses
Hallo
Tut mir leid, das zu reproduzieren ist mir zu aufwändig.
Probiers mal damit
Option Explicit
'Created by (C) Ramses
'--------
Const myName As String = "Menüleiste by Ramses"
Const myDropName As String = "Auswahl"

Sub Create_Window_Control()
Dim myCB  As CommandBar
Dim mycbb As CommandBarControl
Dim i As Integer
Dim myName As String, myDropName As String
Dim datTyp As String, datName As String
myName = "MyField"
myDropName = "Tabellenliste"
datTyp = "xl"
On Error Resume Next
'Vorsichtshalber eine existierende löschen
Application.CommandBars(myName).Delete
'Neue eigene Symbolleiste erstellen
'myName für die Bezeichnung
'msoBarTop platziert die Leiste oberhalb des Sheets
Set myCB = Application.CommandBars.Add(Name:=myName, _
temporary:=True, Position:=msoBarTop)
On Error GoTo 0
'DropDown Feld hinzufügen
Set mycbb = Application.CommandBars(myName).Controls.Add _
(Type:=msoControlDropdown)
With mycbb
'Beschreibung
.Caption = myDropName
'Breite
.Width = 140
'Eigene Gruppe erstellen
.BeginGroup = True
'Makro das ausgeführt wird
'wenn ein Eintrag ausgewählt wird
.OnAction = "Control_Action"
'Hinzufügen aller Tabellennamen
datName = Dir("C:\*." & datTyp & "?")
Do While datName <> ""
.AddItem datName
datName = Dir()
Loop
'For i = 1 To Application.Workbooks.Count
'    If Application.Workbooks(i).Name <> "PERSONL.XLS" Then
'        .AddItem Application.Workbooks(i).Name
'    End If
'Next i
.ListIndex = 1
.Width = 80
.DropDownLines = 10
.DropDownWidth = 125
.TooltipText = "alte Jahreslisten öffnen"
.OnAction = "DateienLaden"
End With
myCB.Visible = True
Set myCB = Nothing
Set mycbb = Nothing
End Sub

Das ist einer meiner Codes, der jetzt das gleiche wie deiner macht
Gruss Rainer
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige