2k Aufrufe
Gefragt in Tabellenkalkulation von
Guten Tag,
ich möchte generell eine doppelte (Namen-) Eingabe verhindern.
Dies ereiche ich im Normalfall über die Gültigkeitsprüfung.
Das funktioniert aber nur, wenn ich den Namen eintippe, aber nicht , wenn ich ihn reinkopiere.
Gibt es eine Möglichkeit eine doppelte Eingabe auch bei kopieren zu verhindern (zur Not auch per VBA)?
Danke und schönen Tag noch Flodnug

7 Antworten

0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo,
ein Versuch für die Spalte A:

Private Sub Worksheet_Change(ByVal Target As Range)
Set Bereich = Columns(1)
If Target.Cells.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
If Intersect(Bereich, Target) Is Nothing Then Exit Sub
If WorksheetFunction.CountIf(Bereich, Target.Value) > 1 Then
MsgBox ("Name schon vorhanden!")
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
Target.Select
End If
End Sub

Gruß
fedjo
0 Punkte
Beantwortet von
Hallo fedjo,
erstmal vielen, vielen Dank für Deine Antwort.
Bin leider erst Heute dazu gekommen, ins Netz zu gehen.
Eine Ergänzungsfrage hätte ich noch.
WO muß ich WAS ändern, wenn es Spalte B oder C werden soll?
Gruß Flodnug
0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo Flodnug,

die Spalte wird festgelegt mit

Set Bereich = Columns(1)


Dabei ist 1 = Spalte A, 2 = Spalte B etc.
Für Spalte B muss es also heißen:

Set Bereich = Columns(2)


Gruß

M.O.
0 Punkte
Beantwortet von
Hallo M.O.,
vielen Dank für die schnelle Antwort.
Werde mich diese Woche an die Komplettierung meiner Datei gehen.
Vielen Dank an alle und ein frohes Fest
0 Punkte
Beantwortet von
Hallo,
ich habe heute mal den Lösungsvorschlag ausprobiert.
Es funktioniert leider nicht.
Ziel soll sein, dass direkt nachdem ich die Eingabezelle verlasse, eine entsprechende Meldung kommen soll.
Leider funktioniert es nachwievor nur beim eintippen, jedoch nicht beim reinkopieren.
Kann mir nochmal jemand helfen?
Danke und Gruß Flodnug
0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo,

wo hast du den das Makro von Fedjo reingeschrieben?
Das Makro gehört in das VBA-Projekt deiner Tabelle und nicht etwa in ein allgemeines Modul.

Gruß

M.O.
0 Punkte
Beantwortet von
Hallo M.O.,
vielen Dank für Deinen Hinweis.
Habe gerade nachgeschaut. Es stand tatsächlich in "Diese Arbeitsmappe".
Nachdem ich es in "Tabelle1" kopiert hatte, hat es tatsächlich funktioniert. Auch so wie ich es haben wollte.
Nochmals vielen Dank an Euch M.O. und fedjo.
Gruß Flodnug
...