Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1924to1928
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
Spalten mit einem Wert in Zeile
05.04.2023 08:06:43
Andreas B.

Hallo zusammen

In Excel möchte ich drei Spalten (F, G und H) so einrichten, dass jeweils in jeder Zeile der Wert "X" nur einmal vorkommen darf (quasi wie ein Radio-Button, bei dem nur ein Wert angeklickt werden kann).

Das heisst, wenn in Zelle F5 ein "x" eingetragen ist, darf weder die Zelle G5 noch H5 ein "x" enthalten. Dies kann natürlich nicht mit Formeln , sondern müsste mit VBA umgesetzt werden. Doch ich weiss nicht wie.

Könnt Ihr mir weiterhelfen?

Vielen herzlichen Dank!

Gruss
Andreas

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten mit einem Wert in Zeile
05.04.2023 08:08:41
SF
Hola,
Dies kann natürlich nicht mit Formeln
natürlich nicht....oder halt mit Zählenwenn() in der Datenüberprüfung.
Gruß,
steve1da


AW: Spalten mit einem Wert in Zeile
05.04.2023 09:22:14
Andreas B.
Besten Dank steve1da

Das war mir gar nicht bewusst, dass man in Datengültigkeitsprüfungen auch Formeln hinterlegen kann. Vielen Dank! Ich habe es ausgetestet und es funktioniert. Nicht so schön ist halt die Fehlermeldung, die herausgegeben wird (Button "Wiederholen", "Abbrechen", "Hilfe"). Mit VBA könnte man da spezifischere Meldungen anzeigen lassen. Vielleicht hat ja Jemand noch eine Idee. Andernfalls belasse ich es bei der Gültigkeitsprüfung ;-)

Gruss
Andreas


Anzeige
AW: Spalten mit einem Wert in Zeile
05.04.2023 09:24:24
SF
Man kann ja die Fehlermeldung in der Datenüberprüfung ein wenig konfigurieren, aber nicht wirklich viel.


AW: Spalten mit einem Wert in Zeile
05.04.2023 09:29:40
MCO
Hallo Andreas!

Der Ansatz von SF warnt bzw. verhindert eine weitere Eingabe in die anderen Spalten.

Dieser Code übernimmt nur die letzte Eingabe und löscht die anderen Felder in der Zeile. Vielleicht entspricht das eher deiner Vorstellung...

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim col As Single
    Dim wert As String
    Dim ber As Range
    
    col = Target.Column
    wert = Target.Value
    Set ber = Application.Intersect(Target, Range("F:H"))
    If Not ber Is Nothing Then
        Application.EnableEvents = False
        Range("F" & Target.Row & ":H" & Target.Row).ClearContents
        Target.Value = wert
        Application.EnableEvents = True
    End If
    Set ber = Nothing
End Sub
Gruß, MCO


Anzeige
Danke!
05.04.2023 10:13:36
Andreas B.
Guten Morgen MCO

Vielen Dank für den Code und die Arbeit, die Du Dir für die Beantwortung meiner Frage gemacht hast.

Das ist genau, was ich gesucht habe! Absolut genial!
Gleichzeitig habe ich im Bereich VBA wieder was gelernt.

Nochmals Danke!

Gruss


AW: Spalten mit einem Wert in Zeile
05.04.2023 10:56:13
Daniel
Hi
noch mehr OptionButton-Feeling bekommst du, wenn du die auswahl durch anklicken machen kannst.
am einfachsten durch Doppellick:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Bereich As Range
Set Bereich = Range("F:H")

If Not Intersect(Target, Bereich) Is Nothing Then
    Intersect(Target.EntireRow, Bereich).ClearContents
    Target.Value = "x"
End If
    
End Sub
damit verhält sich jede Zeile im angegebenen Zellbereich wie eine Gruppe Optionbuttons.
Gruß Daniel


Anzeige
AW: Spalten mit einem Wert in Zeile
05.04.2023 15:09:19
Andreas B.
Genial, vielen Dank, Daniel für Deine Arbeit und die tolle Lösung!
Gruss
Andreas

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige