Registriert seit: 07.05.2020
Version(en): 2016
Hallo zusammen,
ich hab ein Anliegen, was ich selber nicht gelöst bekomme.
Ich muss in der ersten Spalte fortlaufend immer Zahlen eintragen. Diese dürfen sich nicht wiederholen, sollte ich aber versuchen, eine schon vorhandene Nummer einzutragen, soll ein Popup Fenster erscheinen, welches mir sagt, dass diese Nummer schon in Zeile x vorhanden ist.
Ich habe durch die Datenüberprüfung schon geschafft, dass man keine Doppelten Werte eintragen kann und eine PopUp Meldung kann ich auch dadurch anzeigen lassen. Jedoch würde ich gerne in dieser Meldung noch die Zeile stehen haben, in der der Wert schon vorhanden ist.
Kann mir dabei jemand helfen??
Danke & LG
l4w
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
07.05.2020, 13:03
(Dieser Beitrag wurde zuletzt bearbeitet: 07.05.2020, 13:04 von MisterBurns.)
Edit: falsch gelesen.
Schöne Grüße
Berni
Registriert seit: 26.07.2017
Version(en): 365
Hi,
mit VBA geht das z.B. so:
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyBereich As Range
Dim Zeile
If Not Intersect(Range("A:A"), Target) Is Nothing And Target.Count = 1 Then
Set MyBereich = Range(Range("A2"), Cells(Rows.Count, 1).End(xlUp))
Zeile = Application.Match(Target, ActiveSheet.Columns(1), 0)
If Zeile <> Target.Row Then
MsgBox "Eintrag schon in Zeile " & Zeile & " vorhanden!"
End If
End If
End Sub
Binde das in den VBA-Code-Bereich deiner Tabelle ein.
Bechte:
Wie und wo fügt man ein Makro bzw. Code ein?
Herzliche Grüße aus dem Rheinland
Jörg
[Windows 10, Microsoft 365]
Folgende(r) 1 Nutzer sagt Danke an LuckyJoe für diesen Beitrag:1 Nutzer sagt Danke an LuckyJoe für diesen Beitrag 28
• l4w
Registriert seit: 07.05.2020
Version(en): 2016
12.05.2020, 11:08
(Dieser Beitrag wurde zuletzt bearbeitet: 12.05.2020, 11:08 von l4w.)
Hallo zusammen,
vielen Dank für die geniale Lösung, LuckyJoe.
Funktioniert so weit sehr gut, wie ich es gebraucht habe.
Nun kommt leider folgende Meldung, wenn der Wert doppelt eingetippt wurde und dann manuell aus der Zeile gelöscht wird.
Laufzeitfehler '13':
Typen unverträglich
Dann kann man auch Beenden oder auf Debuggen klicken.
Wenn man auf Debuggen klickt, wird folgende Zeile gelb markiert:
If Zeile <> Target.Row Then
Nochmals vielen Dank an dieser Stelle und liebste Grüße
Registriert seit: 26.07.2017
Version(en): 365
Hi,
du hast Recht, hier die angepasste Version:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyBereich As Range
Dim Zeile
If Not Intersect(Range("A:A"), Target) Is Nothing And Target.Count = 1 Then
Set MyBereich = Range(Range("A2"), Cells(Rows.Count, 1).End(xlUp))
Zeile = Application.Match(Target, ActiveSheet.Columns(1), 0)
If Not IsEmpty(Target) Then
If Zeile <> Target.Row Then
MsgBox "Eintrag schon in Zeile " & Zeile & " vorhanden!"
End If
End If
End If
End Sub
Herzliche Grüße aus dem Rheinland
Jörg
[Windows 10, Microsoft 365]