Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1872to1876
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
Inhaltsverzeichnis

Doppelte Eingaben vermeiden

Doppelte Eingaben vermeiden
02.03.2022 13:30:51
Frank
Hallo Ihr Spezialisten,
im Rücklauf von Kundenverträgen müssen deren Adressdaten in einer Liste erfasst werden um später in ein Online-Portal hochgeladen werden zu können.
Um bei der mittlerweile recht langen Liste doppelte Einträge von Adressen zu verhindern, möchte ich diese schon bei der Eingabe prüfen.
Für eine Spalte allein funktioniert das schon ganz gut. Allerdings bestehen Adressen aus Straßennamen, Hausnummer und Zusatz (A, B, usw.), welche jeweils in einer eigenen Spalte stehen.
Hauptstraße 1
Hauptstraße 1 A
Hauptstraße 2
Hauptstraße 1 "Hier sollte jetzt eine Fehlermeldung erscheinen"
Ich habe die Daten verkettet, aber damit kann der VBA-Code nichts anfangen. Google hat mir auch nicht weitergeholfen. Die Datei ist Passwortgeschützt, viele Zellen gesperrt.
Nur die Adresseingabe wird von mehreren Usern genutzt und sollte Eingabefehler "Dubletten" vermeiden.
Ich hoffe, mir kann hier jemand weiter helfen.
Vielen Dank im Voraus
Frank

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Doppelte Eingaben vermeiden
02.03.2022 13:33:07
SF
Hola,

aber damit kann der VBA-Code nichts anfangen
welcher genau?
Man kann das ganz bequem mit der Datenüberprüfung regeln. Zählenwenn()/Zählenwenns() sind hier deine Freunde je nachdem ob du mit den verketteten Werten arbeitest oder mit nicht verketteten.
Gruß,
steve1da
AW: Doppelte Eingaben vermeiden
02.03.2022 14:13:43
Frank
Hier der Code. Spalte E-G bezieht sich auf Straße, Hs-Nr., Zusatz

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'Define your variables.
Dim ws As Worksheet, EvalRange As Range
'Set the range where you want to prevent duplicate entries.
Set EvalRange = Range("E2:G2190")
'If the cell where value was entered is not in the defined range, if the value pasted is larger than a single cell,
'or if no value was entered in the cell, then exit the macro.
If Intersect(Target, EvalRange) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
If IsEmpty(Target) Then Exit Sub
'If the value entered already exists in the defined range on the current worksheet, throw an
'error message and undo the entry.
If WorksheetFunction.CountIf(EvalRange, Target.Value) > 1 Then
MsgBox Target.Value & ", Adresse existiert schon!"
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End If
End Sub

Anzeige
AW: Übrigens:
02.03.2022 14:10:02
Frank
Hallo SF,
ja, die Datenüberprüfung hatte ich auch schon bemüht. Allerdings kommt da die Fehlermeldung bereits nach der Eingabe der Straße. Was zwar richtig ist, die Straße existiert bereits, aber nicht mit der neuen Hs-Nr. Soweit komme ich aber damit nicht...
Frank
Anzeige
AW: Übrigens:
02.03.2022 14:11:06
SF
Dann zeig doch mal eine Exceldatei mit deinem Versuch.
AW: nutze dann ZÄHLENWENNS() owT
02.03.2022 14:11:40
neopa
Gruß Werner
.. , - ...
AW: nutze dann ZÄHLENWENNS() owT
02.03.2022 15:03:30
Frank
Zählenwenn/Zählenwenns habe ich beide versucht. Leider erfolglos.
Nach Eingabe des Straßennamens erscheint bereits die Stopp-Meldung, bevor eine evtl andere Hs.Nr. eingegeben werden kann.
Frank
AW: mit Standardexelfunktionalität ...
02.03.2022 15:12:34
neopa
Hallo Frank,
... also ohne VBA und entsprechender Datengültigkeitsdefinitionsformel funktioniert es problemlos.
Arbeitsblatt mit dem Namen 'Tabelle1'
 AB
1StraßeNr
2Hauptstraße1
3Hauptstraße1a
4Hauptstraße2
5Hauptstraße 
6  

ZelleGültigkeitstypOperatorWert1Wert2
B2Benutzerdefiniert =ZÄHLENWENNS(A$1:A2;A2;B$1:B2;B2)=1 
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Wobei die Definition in B2:B## vorgenommen ist.
Gruß Werner
.. , - ...
Anzeige
AW: mit Standardexelfunktionalität ...
02.03.2022 15:42:59
Frank
Hallo Werner,
das ist schon nahe dran.
Ich habe die Formel noch erweitert (Spalte C ist der Hs.-Nr. Zusatz). Allerdings funktioniert es nur wenn ich in alle 3 Zellen etwas eintrage.
Aber die wenigsten Häuser haben noch den Zusatz A,B oder C usw.
Außerdem bekomme ich auch Fehlermeldungen wenn ich als Zusatz X eingebe (welches es definitiv nicht noch einmal gibt).
Frank
AW: nutze dann ZÄHLENWENNS() owT
02.03.2022 15:25:18
SF

Nach Eingabe des Straßennamens erscheint bereits die Stopp-Meldung, bevor eine evtl andere Hs.Nr. eingegeben werden kann.
Wissen wir, hast du schon geschrieben.
Sollte dir neopa C's Vorschlag nicht weiterhelfen....bekommen wir dann eine Beispieldatei von dir, oder raten wir weiter?
Anzeige
AW: nutze dann ZÄHLENWENNS() owT
02.03.2022 15:28:18
Pierre
Hallo Werner,
soweit ich die Aufgabenstellung verstanden habe, soll in A der Straßenname, in B die Hausnummer und in C eine evtl. Erweiterung stehen.
Deine Formel setzt, wie du es selbst in deinem Beispiel gepostet hast, voraus, dass Hausnummer und Zusatz in einer Spalte stehen.
Wenn diese aber nun getrennt stehen sollen, müsste die Formel um eine Abfrage erweitert werden, also in Datenüberprüfung Spalte C dann:

=ZÄHLENWENNS(A$1:A2;A2;B$1:B2;B2;C$1:C2;C2)=1
Gruß Pierre
AW: eine Formelerweiterung allein reicht nicht ..
02.03.2022 17:24:57
neopa
Hallo Pierre, hallo Frank,
... wenn die Hausnummer und der evtl. Zusatz zur Nr in zwei Spalten getrennt werden/sind. In dem Fall würde ich anstelle mit der Datenüberprüfung mit bedingter Formatierung visuell Doppeleintragungen kenntlich machen. Das ist einfacher und auch etwas sicherer. Die Formeln bleiben im Prinzip die gleichen, nur dass dort nicht auf =1 sondern auf &gt 1 geprüft wird. .
Gruß Werner
.. , - ...
Anzeige
AW: nutze dann ZÄHLENWENNS() owT
02.03.2022 16:21:15
Pierre
Meine Idee schon getestet?
AW: nutze dann ZÄHLENWENNS() owT
02.03.2022 16:40:38
Frank
Hallo Pierre,
ich habe eine Beispieldatei angelegt und hochgeladen.
Darin habe ich deine Formel eingefügt. Ohne Erfolg
Beabsichtigte Fehler werden nicht erkannt. Sinnlose Eingaben führen zur Stopp-Meldung
https://www.herber.de/bbs/user/151511.xlsx
AW: webb Du den Nr-Zusatz separat erfasst ...
02.03.2022 17:13:26
neopa
Hallo Frank,
... dann musst Du in beiden Spalten (B und C) die Datenprüfung vornehmen.
Gruß Werner
.. , - ...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige