Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1556to1560
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
Dropdown ohne Mehrfachauswahl
18.05.2017 08:22:11
martin
Hallo liebes Forum,
kann mir jemand bei folgender Aufgabe weiterhelfen:
Ich habe ein Makro geschrieben, das bei der Neuanlage eines Datenblatts, den Namen des Datenblatt in eine Liste zur Datenüberprüfung aufnimmt.
Man kann dann in Zelle B2 per Dropdown die Namen der Datenblätte auswählen. Das kann man auch in B3, B4, B5 etc.
Nun meine Frage. Ist es möglich, wenn ich "Blatt A" in Zelle B2 bereits ausgewählt habe, dass ich "Blatt A" dann in Zelle B3 nicht mehr auswählen kann? Also die Namen der einzelnen Blätter soll man quasi nicht öfter auswählen können.
Danke schon mal
Gruß

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 10:55:27
martin
Bitte ruhig Fragen stellen falls ich etwas nicht verständlich erklärt habe!
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 10:57:30
yummi
Hallo Martin,
stell doch mal ne beispielmappe ein, das erhöht die chnce auf Hilfe
Gruß
yummi
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 11:50:19
martin
Okay, danke schon mal. Jetzt kommt zwar die MessageBox aber auswählen kann ich ja trotzdem doppelt.
Danke und Gruß
Anzeige
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 11:59:00
yummi
was soll denn genau passieren, wenn doppelt ausgewählt wird, zelle leeerbleiben oder irgend etwas anderes?
Gruß
yummi
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 12:01:38
martin
Ah okay. Also am elegantesten wäre es natürlich wenn der bereits ausgewählte Wert im folgenden Dropdown gar nicht mehr erscheint. Falls das zu aufwändig ist wäre es zumindest ideal wenn die Fehlermeldung kommt und die Zelle leer bleibt.
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 12:10:59
yummi
Hallo martin,
dann so

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
lngLetzte = IIf(IsEmpty(Cells(Rows.Count, 2)), Cells(Rows.Count, 2).End(xlUp).Row, Rows. _
Count)
If blnAusfuehren = False Then
If Not Intersect(Target, Columns(2).SpecialCells(xlCellTypeAllValidation)) Is Nothing  _
Then
If Target.Value  "" And Target.Value  "keine Auswahl" Then
Set rng = FindeWert(ActiveSheet, "B21:B" & lngLetzte, Target.Value)
If Not rng Is Nothing Then
If rng.Row = Target.Row Then
DiaAktualisieren
Else
MsgBox "Bereits ausgewählt"
Target.Value = ""
End If
Else
DiaAktualisieren
End If
End If
End If
End If
End Sub
Gruß
yummi
Anzeige
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 12:06:41
UweD
Hallo
das letzte Blatt kann entfallen...
- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Diesen Code dort reinkopieren
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim RNG As Range, WS, Z, strFilter As String
    Set RNG = Range("B22:B360")
    
    On Error GoTo Fehler
    If Not Intersect(RNG, Target) Is Nothing Then
        For Each Z In Target
            strFilter = ""
            For Each WS In ActiveWorkbook.Sheets
                If WS.Name <> ActiveSheet.Name Then
                    If Application.WorksheetFunction.CountIf(RNG, WS.Name) = 0 Then
                        strFilter = strFilter & WS.Name & ","
                    End If
                End If
            Next
            If strFilter <> "" Then
                With RNG.Validation
                    .Delete
                    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                        xlBetween, Formula1:=strFilter
                    .IgnoreBlank = True
                    .InCellDropdown = True
                    .ShowInput = True
                    .ShowError = True
                End With
            Else 'alles schon belegt 
                With Target.Validation
                    .Delete
                End With
                MsgBox "Alle Blätter bereits eingeteilt"
    
            End If
        Next Z
    End If
Fehler:
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear

End Sub
LG UweD
Anzeige
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 12:29:10
yummi
Hallo Uwe,
schöne Lösung, gefällt mir. Nur den

Set RNG = Range("B22:B360")

würde ich dynamisch halten bis letzezeile.
Gruß
yummi
AW: Dropdown ohne Mehrfachauswahl
18.05.2017 12:30:54
martin
Hey Uwe,
Weltklasse, vielen Dank!
AW: gern geschehen owt
18.05.2017 15:40:38
UweD
AW: gern geschehen owt
19.05.2017 07:55:54
kranzerl
Ich hab natürlich doch noch eine Frage. :)
1. Wenn am Schluss die Fehlermeldung "Alle Blätter bereits eingeteilt" kommt, passiert nichts, egal ob ich o.k. oder "x" drücke. Weißt du was da schief läuft?
2. Das Makro funktioniert nicht wenn ich das Blatt schütze (die Eingabezellen habe ich natürlich nicht gesperrt). Kannst du mir da noch weiterhelfen?
Vielen lieben Dank.
Viele Grüße
Martin
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige