Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
708to712
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
708to712
708to712
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bitte um kurze Beschreibung

Bitte um kurze Beschreibung
13.12.2005 15:26:13
Frank
Hallo Leute!
Ich bräuchte noch ein letztes mal eure Hilfe!
Kann mir bitte jemand kurz erklären, was bei folgendem Makro vorsich geht!?
Diese Arbeitsmappe:

Private Sub Workbook_Open()
Dim sh As Worksheet, Cb As ComboBox, i As Integer
Set Cb = Sheets(1).ComboBox1
For i = 2 To Sheets.Count
Cb.AddItem Sheets(i).Range("B3") & " - " & Sheets(i).Name
Next i
End Sub

Tabelle1:

Private Sub ComboBox1_Change()
Sheets(ComboBox1.ListIndex + 2).Activate
End Sub

Das wäre echt super!
Vielen Dank im voraus!
mfg
Frank

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bitte um kurze Beschreibung
13.12.2005 15:30:01
Alexander
Hallo Frank.
Im ersten Makro wird eine Auswahlliste mit den Namen aller Blätter in der aktuellen Arbeitsmappe (außer dem ersten) befüllt.
Das zweite Makro öffnet ein Arbeitsblatt, wenn es in der Auswahlliste ausgewählt wurde.
Gruß, Alex.
AW: Bitte um kurze Beschreibung
13.12.2005 15:38:57
Frank
Vielen Dank schonmal!!
Ich weiß, es ist ein bischen viel verlangt, aber könntet ihr mir das Makro auch ein wenig genauer erklären. Also was die einzelnen Zeile so ungefähr bedeuten!
Gruß
Frank
AW: Bitte um kurze Beschreibung
13.12.2005 16:25:43
Alexander
'Wird immer ausgeführt, wenn die Datei geöffnet wird

Private Sub Workbook_Open()
Dim sh As Worksheet, Cb As ComboBox, i As Integer
'Zuweisen des Auswahlfelds zu Variablen für einfacheres Ansprechen
Set Cb = Sheets(1).ComboBox1
'Alle Blätter in der Mappe außer dem ersten durchlaufen
For i = 2 To Sheets.Count
'Der Auswahlliste den Inhalt der Zelle "B3" und den Namen des aktuellen Blatts zuweisen
Cb.AddItem Sheets(i).Range("B3") & " - " & Sheets(i).Name
Next i
End Sub

'Wird ausgeführt, wenn sich der Wert des Auswahlfelds ändert

Private Sub ComboBox1_Change()
'Der Index des ausgewählten Werts/Blatts in der Auswahlliste wird ermittelt, um 2 erhöht und ergibt so den Index des Blatts, dass dann angezeigt wird
Sheets(ComboBox1.ListIndex + 2).Activate
End Sub

Anzeige
AW: Bitte um kurze Beschreibung
13.12.2005 16:40:47
Frank
Super!
Vielen Dank!
Warum aber muss der Wert um 2 erhöht werden?
AW: Bitte um kurze Beschreibung
14.12.2005 08:08:22
Alexander
Hallo Frank.
Der Offset von 2 kommt daher:
1.) Die erste Seite soll nicht aufgerufen werden, deshalb muss schonmal ein Offset von 1 da sein, weil der erste Eintrag in der Liste ja das zweite Arbeitsblatt darstellt.
2.) Der Index der ersten Seite in der Sheets-Sammlung ist 1. Der Index des ersten Eintrags in der Auswahlliste ist 0. Deshalb noch ein Offset von 1.
Gruß, Alex.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige