Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1208to1212
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

Select Case Spaltüberschrift mehrfach

Select Case Spaltüberschrift mehrfach
Karel
Guten Mittag,
Unterstehende Code mit Select Case, in der Zeile 5 steht immer die Überschrift der Spalte und in dieser Zelle ist auch immer der entsprechende Name zugewiesen. Z.B TB1, TB2, TB3
Wenn ich Z.B. in Zelle B5 “TB1“ eingeben kann ich ab Zelle B8 mit Doppelklick Z.B. ein Userform öffnen, das geht auch ohne Probleme.
Gerne möchte ich aber mehrfach Z.B. im C5, E5 oder eine andere Zelle TB1 eingeben sodass ich im betreffende spalte unterandere gleiche Userform aufrufen kann, aber das geht bis jetzt nicht, nur letzte Name ist zulässig. Wie geht das?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) 'Klaus   _
_
Schubert
Dim letzteZeile As Integer, i As Integer
Dim Ueberschrift(2) '0 - 2
For i = 1 To 256
Select Case Cells(5, i) ' in der Zeile 5  steht immer die Überschrift der Spalte und dieser   _
_
Zelle
' ist auch immer der entsprechende Name zugewiesen. Z.B TB1, TB2, TB3
Case "TB1": Ueberschrift(0) = i
Case "TB2": Ueberschrift(1) = i
Case "TB3": Ueberschrift(2) = i
'hier einfach erweitern, mit jeder Erweiterung
'die Zahl bei der Variablen und bei
'Dim Ueberschrift(2) um eins erhöhen!
End Select
Next i
If Target.Row > 8 Then
Select Case Target.Column
Case Ueberschrift(0)  '1
'Mach was
Text_Form.Show "1"
Case Ueberschrift(1)  '2
'Mach was anderes
MsgBox "blabla"
Case Ueberschrift(2)  '3
'Noch was anderes
MsgBox "Status"
End Select
End If
End Sub
Grüße,
Karel

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Select Case Spaltüberschrift mehrfach
13.04.2011 14:02:03
Timo
Hallo Karel,
so wie das im Moment aufgebaut ist, läuft die Sub ja immer durch alle 256 Zellen der Überschrift und dadurch wird der Wert in 'Ueberschrift(n)' jeweils überschrieben, wenn die Überschrift mehrfach vorkommt. So steht natürlich immer die Spalte der letzten ausgelesenen Überschrift in 'Ueberschrift(n)'.
Vielleicht ist diese Version besser für Deine Zwecke geeignet:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
Dim strUeberschrift As String
If Target.Row > 8 Then
strUeberschrift = Cells(5, Target.Column).Value
Select Case strUeberschrift
Case "TB1"  '1
'Mach was
Text_Form.Show "1"
Case "TB2"  '2
'Mach was anderes
MsgBox "blabla"
Case "TB3", "TB4"
'Noch was anderes
MsgBox "Status"
End Select
End If
End Sub
Damit nimmt die Sub nun genau die Überschrift als Suchkriterium für Select Case. Wenn also die Überschrift "TB1" in C5, F5 und K5 vorhanden ist, wird jeweils bei Doppelklick unterhalb C8,F8 und K8 die Userform aufgerufen.
Gruß
Timo
Anzeige
AW: Schwäbische Variablenvariante :-)
13.04.2011 19:47:32
Gerd
Hallo,
dann auch so:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
If Target.Row > 8 And Target.Column 
Gruß Gerd
AW: beide varianten Top, Danke owT
13.04.2011 20:35:06
Karel
danke

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige