Clever-Excel-Forum

Normale Version: Dropdown-Liste in Zelle erweitern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo Attila,

die halbe Nacht hätte es nicht sein müssen. ;)
https://www.youtube.com/watch?v=FTTjKGs7KCo
Hallo,

intelligente Tabellen kann man auch überlisten:

Arbeitsblatt mit dem Namen 'Tabelle2'
 AB
1NummerName
21x
32y
43z
54 

ZelleGültigkeitstypOperatorWert1Wert2
A2Ganzzahlzwischen1=MAX($A$1:A1)+1
A3Ganzzahlzwischen1=MAX($A$1:A2)+1
A4Ganzzahlzwischen1=MAX($A$1:A3)+1
A5Ganzzahlzwischen1=MAX($A$1:A4)+1
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
@alle:
Ich habe nun die Lösung mit dem Makro beibehalten und bin damit zufrieden:
  • ich kann per Mausklick hoch- und runterzählen
  • ich kann die Zahlen direkt eingeben
  • es werden keine Zahlen akzeptiert, die größer sind als Max +1 und kleiner als 1
  • nur der Dropdown-Pfeil fehlt, aber der wird so nicht mehr benötigt
Hallo Ralf (Rabe)

um Dich geht es hier gar nicht mehr sondern um intelligente... Blush

Chris, alle Wege die gezeigt wurden habe ich ja selber schon erarbeitet.
Und mit der halben Nacht ist nicht ganz richtig. Den Abend muss man noch hinzurechnen.
Aber mit Zeiten und rechnen habe ich es auch nicht so, denn dann hätte ich nicht die halbe Nacht
für so etwas geopfert. Danke für Deinen Hinweis. Blush

Edgar, das ist mir bekannt, so mache ich es meistens auch. Denn die Benennungen irritieren mich manchmal mehr als, dass sie Ordnung reinbringen.
Nur in diesem Fall ist wäre es keine gute Idee, weil dann die Dynamik fehlte. Ok, brauchte man hier auch nicht. Aber das sollte eher für den allgemeinen Umgang
sein. Aber ist gut, dass das auch erwähnt wird, weil viele gar nicht daran denken, dass es auch anders geht.

Ralf (RPP63 ), Dir auch vielen Dank für Deine Einlassung.
Ist ja schön, dass wir dem snb auch mal etwas voraus haben :05:
Hallo Ralf,

nach dem wir Dich ein wenig ignoriert haben, habe ich mir Deine VBA Lösung noch einmal angesehen und nachvollziehen können, was Du genau machen möchtest.

Deswegen von mir zwei Alternativen:

1. Spinbutton aus den ActiveX

Code:
Private Sub SpinButton1_SpinDown()
 Me.SpinButton1.Min = Application.Min(Sheets("Datenbank").Range("Tabelle2[Projekt-Nr.]")) + 1
 Cells(5, 3) = Me.SpinButton1 - 1
End Sub


Private Sub SpinButton1_SpinUp()
 Me.SpinButton1.Max = Application.Max(Sheets("Datenbank").Range("Tabelle2[Projekt-Nr.]"))
 Cells(5, 3) = Me.SpinButton1 + 1
End Sub


2. mit einer Kombi aus Rechtsklick- und Doppelklickereignis:


Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'hoch zählen
Dim lngMax As Long
 If Target.Address(0, 0) = "C5" Then
   lngMax = Application.Max(Sheets("Datenbank").Range("Tabelle2[Projekt-Nr.]")) + 1
     Cancel = True
     If Cells(5, 3) < lngMax Then Cells(5, 3) = Cells(5, 3) + 1
 End If
End Sub

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
'runter zählen
 If Target.Address(0, 0) = "C5" Then
     Cancel = True
     If Cells(5, 3) > 0 Then Cells(5, 3) = Cells(5, 3) - 1
 End If
End Sub
Hallo zusammen,


Code für das Spinbutton muss so korrigiert werden:


Code:
Private Sub SpinButton1_SpinDown()
Me.SpinButton1.Min = Application.Min(Sheets("Datenbank").Range("Tabelle2[Projekt-Nr.]"))
Cells(5, 3) = Me.SpinButton1
End Sub


Private Sub SpinButton1_SpinUp()
Me.SpinButton1.Max = Application.Max(Sheets("Datenbank").Range("Tabelle2[Projekt-Nr.]")) + 1
Cells(5, 3) = Me.SpinButton1
End Sub
Seiten: 1 2