Anzeige
Archiv - Navigation
884to888
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
884to888
884to888
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

doppelte Einträge

doppelte Einträge
05.07.2007 07:54:00
HOLGI
Hallo liebe Leute,
ich greife mein Problem von gestern nochmal neu an, hoffentlich bekomme ich Hilfe.
Ich habe eine Tabelle mit Namen, Vornamen, Bereich, Passwort und Kurzzeichen. Mit folgendem sub

Private Sub TextBox1_AfterUpdate()
Dim Bereich As Range
Dim Letzte As Long
If [A65536] = "" Then
Letzte = [A65536].End(xlUp).Row
Else
Letzte = 65536
End If
Set Bereich = Sheets("PW").Range("A1:A" & Letzte) _
.Find(TextBox1, lookat:=xlWhole)
If Bereich Is Nothing Then
'   MsgBox "Bitte Daten Eingeben"
Else
MsgBox "Benutzer '" & TextBox1 & "' ist schon vorhanden!"
TextBox1 = ""
End If
End Sub


verhindere ich doppelte Einträge über die Userform in Textbox1(Name).
Jetzt mein Problem: Doppelte Namen kommen aber schonmal vor,aber Name und Vorname(Textbox2) dürfen nicht doppelt vorkommen, wie kann ich das Problem lösen. Weiß jemand Rat?
Gruß
HOLGI

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: doppelte Einträge
05.07.2007 08:54:00
Hajo_Zi
Hallo Holgi,
Prüfe nach else noch die zweite Spalte mit dem zweiten Begriff.

AW: doppelte Einträge
05.07.2007 08:56:00
HOLGI
Hallo Hajo,
stehe auf dem schlauch? kannst Du mir auf die sprünge helfen?
Gruß
HOLGI

AW: doppelte Einträge
05.07.2007 09:07:24
Hajo_Zi
Hallo Holgi,
ich habe da Beispiel jetzt nicht nachgebau, also ohne Testung.

Option Explicit
Private Sub TextBox1_AfterUpdate()
Dim Bereich As Range
Dim LoLetzte As Long
If Textbox1 = "" Then Exit Sub
'   letzte belegte Zeile unabhängig von Excelversion für Spalte A (1)
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count)
Set Bereich = Sheets("PW").Range("A1:A" & LoLetzte) _
.Find(Textbox1, lookat:=xlWhole)
If Not Bereich Is Nothing Then
If Textbox2  "" Then
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 2)), Cells(Rows.Count, 2).End(xlUp).Row,  _
Rows.Count)
Set Bereich = Sheets("PW").Range("B1:B" & LoLetzte) _
.Find(Textbox2, lookat:=xlWhole)
If Not Bereich Is Nothing Then
MsgBox "Benutzer '" & Textbox1 & "' ist schon vorhanden!"
Textbox1 = ""
Textbox2 = ""
End If
End If
End If
End Sub



Anzeige
AW: doppelte Einträge
05.07.2007 09:00:00
Chaos
servus,

Sub TextBox1()
Dim Letzte As Long, zeile As Long
Dim s As String, t As String, a As String
s = InputBox("Name")
t = InputBox("Vorname")
If [A65536] = "" Then
Letzte = [A65536].End(xlUp).Row
Else
Letzte = 65536
End If
For zeile = Letzte To 1 Step -1
If Cells(zeile, 1).Value = s Then
If Cells(zeile, 2).Value = t Then
MsgBox (" Benutzer " & s & " " & t & " ist schon vorhanden")
Exit Sub
Else
a = 1
End If
End If
Next zeile
If a = 1 Then
MsgBox ("kein Doppeleintrag")
Range("A65536").End(xlUp).Offset(1, 0).Value = s
Range("B5536").End(xlUp).Offset(1, 0).Value = t
End If
End Sub


Habe hier etwas als Ansatz für dich. Du musst nur die InputBoxen durch Textbox ersetzen, bzw rausschmeißen und wo t und s steht TextBox 1 und 2 schreiben
gruß
Chaos

Anzeige
AW: doppelte Einträge
05.07.2007 09:09:57
Hajo_Zi
Hallo Holgi,
fange nicht zu einem Thema mehrere Beiträüge an. Die Übersicht geht verloren und man findet die Lösung schlecht im Archiv. Dein alter Beitrag ist ja nur paar Beiträge unter diesem Beitrag.
Gruß Hajo

AW: doppelte Einträge
05.07.2007 09:13:42
Chaos
Sorry,
hat noch was gefehlt:

Sub TextBox1()
Dim Letzte As Long, zeile As Long
Dim s As String, t As String, a As String, b As String
s = InputBox("Name")
t = InputBox("Vorname")
If [A65536] = "" Then
Letzte = [A65536].End(xlUp).Row
Else
Letzte = 65536
End If
For zeile = Letzte To 1 Step -1
If Cells(zeile, 1).Value = s Then
If Cells(zeile, 2).Value = t Then
MsgBox (" Benutzer " & s & " " & t & " ist schon vorhanden")
Exit Sub
Else
a = 1
End If
Else
a = 1
End If
Next zeile
If a = 1 Then
MsgBox ("kein Doppeleintrag")
Range("A65536").End(xlUp).Offset(1, 0).Value = s
Range("B5536").End(xlUp).Offset(1, 0).Value = t
End If
End Sub


Gruß
Chaos

Anzeige
AW: doppelte Einträge
05.07.2007 09:20:05
HOLGI
Hallo Caos,
muß der sub in einmodul und wenn ja wo stelle ich den eintrag hin...bin heut echt etwas schwer von kapee
Gruß HOLGI

AW: doppelte Einträge
05.07.2007 09:27:55
Chaos
Servus Holgi,
kommt drauf an, was du machhen willst.
benenn die sub einfach in den alten namen um Private sub TextBox1_Activate oder was das war und dann in das gleiche Modul.
hast du's getestet ? Funktionierts? Mit den InputBoxen geht's auf jeden Fall. ich hab deinen Code etwas verändert, weil du mit der .Find-Methode bei gleichen Nachnamen, aber unterschiedlichen Vornamen Probleme bekommen kannst.
Gruß
Chaos

Anzeige
AW: doppelte Einträge
05.07.2007 10:14:00
HOLGI
Hi Chaos,
habe den

Sub so geändert
Dim Letzte As Long, zeile As Long
Dim s As String, t As String, a As String, b As String
s = TextBox1("Name")
t = TextBox2("Vorname")
If [A65536] = "" Then
Letzte = [A65536].End(xlUp).Row
Else
Letzte = 65536
End If
For zeile = Letzte To 1 Step -1
If Cells(zeile, 1).Value = TextBox1 Then
If Cells(zeile, 2).Value = TextBox2 Then
MsgBox (" Benutzer " & s & " " & t & " ist schon vorhanden")
Exit Sub
Else
a = 1
End If
Else
a = 1
End If
Next zeile
If a = 1 Then
MsgBox ("kein Doppeleintrag")
Range("A65536").End(xlUp).Offset(1, 0).Value = TextBox1
Range("B5536").End(xlUp).Offset(1, 0).Value = TextBox2
End If
End Sub


funktioniert aber nicht, bleibt bei s = TextBox1("Name") hängen
Gruß
HOLGI

Anzeige
AW: doppelte Einträge
05.07.2007 11:19:45
Chaos
servus,

Sub so geändert
Dim Letzte As Long, zeile As Long
Dim s As String, t As String, a As String, b As String
s = TextBox1
t = TextBox2
If [A65536] = "" Then
Letzte = [A65536].End(xlUp).Row
Else
Letzte = 65536
End If
For zeile = Letzte To 1 Step -1
If Cells(zeile, 1).Value = TextBox1 Then
If Cells(zeile, 2).Value = TextBox2 Then
MsgBox (" Benutzer " & s & " " & t & " ist schon vorhanden")
TextBox1 = ""
textBox2 = ""
Exit Sub
Else
a = 1
End If
Else
a = 1
End If
Next zeile
If a = 1 Then
MsgBox ("kein Doppeleintrag")
Range("A65536").End(xlUp).Offset(1, 0).Value = TextBox1
Range("B5536").End(xlUp).Offset(1, 0).Value = TextBox2
End If
End Sub


TextBox1 und TextBox2 sind ja nun Variablen für die TextBox, aslo ohne (" Vor-, Name") ist ja ne InputBox gewesen und steht der Code an er richtigen Stelle ?
Gruß
Chaos

Anzeige
AW: doppelte Einträge
05.07.2007 11:32:31
HOLGI
hi,
der code steht in der UF, ist doch richtig oder?

AW: doppelte Einträge
05.07.2007 11:38:21
HOLGI
hi chaos,
er überprüft jetzt wohl textbox1, und zeigt dann die MsgBox und löscht den Eintrag, wenn ich erst den Vorname eingebe, dann den Nachname, kommt die 2. MsgBox und die daten werden im sheet unter a1:b1 eingefügt und nicht im sheet "PW" wo sie hingehören...alles etwas seltsam ((-;
Gruß
HOLGI

AW: doppelte Einträge
05.07.2007 13:24:10
Chaos
Servus Holgi,
In der Userform ist das o.k.
du musst dem Makro aber schon sagen, wohin die Werte sollen, woher soll es denn das wissen.
z.B. Sheets("PW").Range...
Das andere kann ich so nicht nachvollziehen, kannst du deine Datei posten ?
Gruß
Chaos

Anzeige
AW: doppelte Einträge
05.07.2007 14:14:15
HOLGI
Hi Chaos,
hier mein upload, vielleicht bring der ja was
gruß
HOLGI

Die Datei https://www.herber.de/bbs/user/43862.xls wurde aus Datenschutzgründen gelöscht


AW: doppelte Einträge
05.07.2007 14:24:01
Chaos
Servus Holgi,
hab mal bei mir ne userform erstellt und das ausprobiert, was du gesagt hast, funktioniert einwandfrei bei mir, egal welche TextBox ich zuerst befülle.
Schau dir mal die Deklaration an, evtl. liegt es daran, habs etwas verändert.
https://www.herber.de/bbs/user/43864.xls
Ich schau mir mal deine an, aber evtl. hilft dir das andere schon weiter.
Gruß
Chaos

Anzeige
AW: doppelte Einträge
05.07.2007 14:48:41
Chaos
servus Holgi,
hab was geändert in Userverwaltung (Userform), darum geht' s doch, oder?
https://www.herber.de/bbs/user/43866.xls
Anmerkungen stehen im Code.
Schau's dir mal an.
Gruß
Chaos

AW: doppelte Einträge!!HILFEEE
05.07.2007 19:44:00
HOLGI
Hallo chaos
bei mir macht er wieder ne Fehlermeldung...verzweifele noch...deine UF funktioniert, aber da wird noch unterschieden zwischen groß und kleinschreibung...
setze mal die frage auf offen...vielleicht hast du oder ein anderer ja noch ne idee zu meiner Datei
Gruß HOLGI

AW: doppelte Einträge!!HILFEEE
05.07.2007 20:09:18
Chaos
Servus,
welche Fehlermeldung?
Ich komm bei dir nur mit Username und Passwort rein, hast mal eins für die Datei. Dann kann ich's an deiner ausprobieren.
Gruß
Chaos

Anzeige
AW: doppelte Einträge!!HILFEEE
05.07.2007 22:48:00
HOLGI
hi chaos
username:Kockmeyer
passwort: punkin
viel glück((-;
Gruß
HOLGI

AW: doppelte Einträge!!HILFEEE
05.07.2007 23:15:00
Chaos
Servus,
also schau dir mal die Userform Userverwaltung an!
Ich hab jetzt einiges da rumgebastelt (hab dein Login rausgeschmissen in dieser Datei, war noch bevor du mir die Daten geschickt hast, aber ist ja egal)
Jetzt schreibt das Makro alles was neu ist in PW und bei doppelter Eingabe kommt die MsgBox.
Hab ganz unten im Makro noch eine Löschschleife eingebaut, weil durch die Umstellung zwar alles funktioniert hatte, er aber aus irgendeinem Grund trotzdem immer den Nachnamen und den Bereich nach PW geschrieben hat.
Die seltsame Schleife im oberen Makro, hab ich rausgenommen und das ganze in das andere Makro verlegt mit .End(xlUp).Offset(1, 0) (was macht die Schleife eigentlich?) Exit For und dann Next ?
Hoffe das war es, was du erreichen wolltest, probiers mal mit dieser Datei aus.
https://www.herber.de/bbs/user/43873.xls
Gruß
Chaos

AW: doppelte Einträge!!HILFEEE
05.07.2007 23:40:47
HOLGI
CHAOS...DU BIST NE WUCHT...
ich danke Dir von Herzen für Deine zahlreichen bemühungen...1000000Dank
Funktioniert wunderbar
schönen Restabend und eine gute Nacht
Gruß
HOLGI
P.S.: Dein Name passt nicht zu DIR...hast zumindest "Mein Chaos" beseitigt!!!

AW: doppelte Einträge!!HILFEEE
06.07.2007 07:38:51
Chaos
Na endlich,
gern geschehen.
Gruß
Chaos

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige