Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: bestimmte Werte zulassen

bestimmte Werte zulassen
07.07.2007 11:52:39
Klaus-Dieter
Hallo,
habe folgendes Problem. Ich möchte in einem bestimmten Abschnitt einer Tabelle nur die Zahlen 1, 2 oder 3 zulassen. Nun habe ich im Forum bereits etwas ähnliches gefunden. Leider funktioniert dies nur mit
einer bestimmten Zelle.
Anbei das Beispiel das ich gefunden habe:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Zahl
Dim Zelle as String
Zelle = "A1"
If Range(Zelle) = "" Then
Exit Sub
End If
Zahl = Left(Range(Zelle), 1)
Select Case Zahl
Case 1, 2, 3
Exit Sub
Case Else
MsgBox "Nur 1 , 2 oder 3 als Eingabe zulässig !"
Range(Zelle).Value = ""
Range(Zelle).Activate
End Select
End Sub


In diesem Beispiel wird "A1" getestet. Was muss ich verändern um mehrere Zellen zu testen?
vorab herzlichen Dank.
Klaus-Dieter

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: bestimmte Werte zulassen
07.07.2007 11:59:31
Jens
Hallo
Wie wäre es mit "Daten-Gültigkeit" ?
Gruß aus dem Sauerland
Jens

AW: bestimmte Werte zulassen
07.07.2007 11:59:00
Hajo_Zi
Hallo Klau.-Dieter,
das geht auch ohne VBA, Daten, Gültigkeit.

AW: bestimmte Werte zulassen
07.07.2007 12:07:18
Jenny
Hallo Klaus-Dieter,
Dieses Makro prüft nur die erste Ziffer, d.h. es werden auch Zahlen wie 1999 zugelassen.
Wenn ich dein Problem richtig verstehe, dann brauchst du gar kein VBA.
Markiere deine Zellen und wähle Menü Daten -- Gültigkeit -- Zulassen: Ganze Zahl, Min=1, Max=3
Falls es partout in VBA sein soll, dann lasse einfach während der Aktion den Makrorekorder mitlaufen...
Grüße von Jenny im Excel-Land

Anzeige
AW: bestimmte Werte zulassen
07.07.2007 12:35:03
{Boris}
Hi Klaus-Dieter,
falls es aus bestimmten Gründen VBA sein muss, dann z.B. so:

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Const STR_RANGE As String = "B1:C10,E5:F7" ' 1 Then
MsgBox "Mehrfachmarkierung in diesem Bereich nicht möglich", 64, "Kleiner Hinweis..."
.EnableEvents = False
.Undo
GoTo Uups
End If
Select Case Target
Case 1, 2, 3, "" '


Grüße Boris

Anzeige
AW: bestimmte Werte zulassen
09.07.2007 07:03:53
Klaus-Dieter
Hallo zusammen,
vielen Dank für die Hilfe.
Klaus-Dieter
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Bestimmte Werte in Excel zulassen


Schritt-für-Schritt-Anleitung

Um in Excel nur bestimmte Werte zuzulassen, kannst Du die Funktion zur Datenvalidierung nutzen. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Zellen markieren: Wähle die Zellen aus, in denen Du nur bestimmte Werte zulassen möchtest.
  2. Daten-Gültigkeit öffnen: Gehe zu Daten > Datenüberprüfung.
  3. Einstellungen anpassen:
    • Wähle im Dropdown-Menü unter "Zulassen" die Option Ganze Zahl.
    • Setze die Minimum- und Maximum-Werte auf 1 und 3.
  4. Bestätigen: Klicke auf OK. Nun sind in den ausgewählten Zellen nur die Werte 1, 2 und 3 erlaubt.

Falls Du Excel VBA verwenden möchtest, kannst Du den folgenden Code in das passende Arbeitsblatt einfügen:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Zelle As Range
    For Each Zelle In Target
        If Not Intersect(Zelle, Me.Range("A1:A10")) Is Nothing Then
            If Not (Zelle.Value = 1 Or Zelle.Value = 2 Or Zelle.Value = 3) Then
                MsgBox "Nur 1, 2 oder 3 als Eingabe zulässig!"
                Zelle.Value = ""
            End If
        End If
    Next Zelle
End Sub

Häufige Fehler und Lösungen

  • Fehler: Eingabe wird nicht akzeptiert.

    • Lösung: Überprüfe die Datenvalidierungseinstellungen und stelle sicher, dass Du die richtigen Werte (1-3) eingegeben hast.
  • Fehler: VBA funktioniert nicht auf mehreren Zellen.

    • Lösung: Stelle sicher, dass Du die Schleife über die Zellen im VBA-Code korrekt implementiert hast, wie im Beispiel oben gezeigt.

Alternative Methoden

Wenn Du in Excel nur Werte aus einer Liste zulassen möchtest, kannst Du dies ebenfalls über die Datenvalidierung tun:

  1. Liste erstellen: Erstelle eine Liste mit den erlaubten Werten (z.B. in einem anderen Blatt oder in einer Spalte).
  2. Daten-Gültigkeit öffnen: Wähle erneut die Zellen aus, gehe zu Daten > Datenüberprüfung.
  3. Einstellungen anpassen: Wähle im Dropdown-Menü unter "Zulassen" die Option Liste und gib den Bereich Deiner Liste ein (z.B. =$F$1:$F$3).
  4. Bestätigen: Klicke auf OK.

Praktische Beispiele

  1. Beispiel für Datenvalidierung: Wenn Du in der Spalte A nur die Werte 1, 2 und 3 zulassen möchtest, markiere die ZelleA1` und wende die oben beschriebenen Schritte an.
  2. VBA-Anwendung: Wenn Du ein VBA-Skript hast, das die Eingaben in den Zellen B1:C10 und E5:F7 überwachen soll, kannst Du den folgenden Code verwenden:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Me.Range("B1:C10,E5:F7")) Is Nothing Then
        If Target.Value <> 1 And Target.Value <> 2 And Target.Value <> 3 Then
            MsgBox "Nur 1, 2 oder 3 als Eingabe zulässig!"
            Target.Value = ""
        End If
    End If
End Sub

Tipps für Profis

  • Nutze bedingte Formatierung, um die Zellen hervorzuheben, in denen ungültige Eingaben gemacht wurden.
  • Wenn Du häufig Datenvalidierungen anwendest, erstelle eine Vorlage mit den entsprechenden Einstellungen, um Zeit zu sparen.
  • Halte Deine Liste der erlaubten Werte in einem separaten Blatt, um die Wartung zu erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich auch negative Werte zulassen?
Du kannst die Einstellungen in der Datenvalidierung anpassen, indem Du die Min- und Max-Werte entsprechend änderst.

2. Funktioniert das in allen Excel-Versionen?
Ja, die Funktion zur Datenvalidierung ist in allen aktuellen Excel-Versionen verfügbar.

3. Kann ich Texte in der Liste verwenden?
Ja, in der Datenvalidierung kannst Du auch Textwerte zulassen, indem Du die Liste entsprechend anpasst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige