Home Office-Hilfe.com - Wir lösen Ihr Problem mit Microsoft Excel, Word, Outlook, PowerPoint, Access gratis Forum Impressum

  doppelte Werte in Spalte verhindern
Neues Thema eröffnenNeue Antwort erstellen
Autor Nachricht
Pino28
Besserwisser
Besserwisser


Anmeldedatum: 17.10.2007
Beiträge: 93

BeitragVerfasst am: 09.11.2007, 00:09 Nach oben

HAllo!
KAnn ich doppelte Werte mit VBA in einer Spalte ("AA") verhindern? Die Daten in Spalte AA werden per Userform mit Textfeld eingegeben.

Evtl. eine "vorabfrage" schon bei der Eingabe in das Textfeld möglich?

1000Dank im Vorraus!


Mike
Benutzer-Profile anzeigenPrivate Nachricht senden
john g.
Office-Spezialist
Office-Spezialist


Anmeldedatum: 10.03.2006
Beiträge: 339

BeitragVerfasst am: 09.11.2007, 07:59 Nach oben

Hallo,

ich habe mir beigefügte Hilfe für lange Eingabelisten gebastelt.


doppelte Einträge identifizieren.xls
 Beschreibung:

Download
 Dateiname:  doppelte Einträge identifizieren.xls
 Dateigröße:  14.5 KB
 Heruntergeladen:  117 mal


_________________
Gruß
J.
Benutzer-Profile anzeigenPrivate Nachricht senden
Pino28
Besserwisser
Besserwisser


Anmeldedatum: 17.10.2007
Beiträge: 93

BeitragVerfasst am: 09.11.2007, 18:46 Nach oben

HAllo John!

die Idee ist ja nahezu perfekt. Da ich aber aus VBA einer Userform heraus einen Eintrag in die Spalte AA vornehme, müsste schon beim Bestätigen die Fehlermeldung kommen.

Also: Aufruf einer Userform (hier: Gebäudeneu)
- der User gibt eine 3 stellige Nummer für ein neues Gebäude ein (Textbox1.)

Dieser Wert wird per MAkro (Enter-Taste)an die letzte freie Stelle in Spalte AA"katapultiert".

Die Abfrage, dass der Wert eine numerische Zahl sein muss habe ich nun, mir fehlt jetzt nur die Idee für den doppelten Eintrag und das die ZAhl NUR eine 3 stellige sein darf! : Wenn wert <>"000" und doppelt in Spalte AA dann UserformFehler.

Ganz simple ausgedrückt.


Vielleicht hat ja noch jemand eine geniale Idee?

DAnke im Vorraus!

Mike
Benutzer-Profile anzeigenPrivate Nachricht senden
schatzi
Moderator
Moderator


Anmeldedatum: 09.12.2006
Beiträge: 5725

BeitragVerfasst am: 09.11.2007, 20:45 Nach oben

Hallo!

Wie wäre sowas?

Code:
Dim Zelle as Range
Set Zelle = Sheets("Blattname").Range("AA:AA").Find(TextBox1.Text)
If Not Zelle Is Nothing Then
MsgBox "Diese Nummer existiert schon!"
Else
...
...
End If

_________________

Viele Grüße vom Schatzi

------------------------
Ich bin nur noch sporadisch erreichbar!
Bitte hofft nicht auf eine schnelle Beantwortung einer Rückfrage meinerseits!
Jeder andere Helfer darf Rückfragen gerne übernehmen!
Benutzer-Profile anzeigenPrivate Nachricht senden
Pino28
Besserwisser
Besserwisser


Anmeldedatum: 17.10.2007
Beiträge: 93

BeitragVerfasst am: 10.11.2007, 15:18 Nach oben

HAllo!

superspitzenmäßigrattenscharf!

einfach genial Danke an Schnake(mal wieder!)

Aber der User kann immer noch eine 4 oder mehrstellige Zahl eingeben. Das wäre noch eine Sache die ich irgendwie realisieren müsste.
Und etwas funzt auch nicht(wachum auch immer, ich finde es nicht):
Wenn ein Wort statt Zahl oder eine schon vorhandene ZAhl eingegeben wurde, wollte ich den Fokus wieder in die Textbox1 haben, geht aber nicht. WO liegt mein Denkfehler?

Hier erstmal mein kompletter Code:

Private Sub CommandButton1_Click()

TextBox1.Enabled = True
Label3.Visible = True
CommandButton1.Visible = False
TextBox1.SetFocus


End Sub
============================

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyReturn Then
(UserfGebäudeNeu.TextBox1, "000")
ActiveSheet.Unprotect
Dim Zelle As Range
Set Zelle = Sheets("Gerät").Range("AA:AA").Find(TextBox1.Text)
If Not Zelle Is Nothing Then
TextBox1.Enabled = True
UserfGebäudeNeu.TextBox1 = ""
UserfGebäudeNeu.TextBox1.SetFocus
MsgBox "Diese Nummer existiert schon!"
Else
Cells(Range("AA65536").End(xlUp).Offset(1, 27).Row, 27) = UserfGebäudeNeu.TextBox1
Columns("AA:AA").Select
Selection.NumberFormat = "000"
Selection.TextToColumns Destination:=Range("AA1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True
Selection.Sort Key1:=Range("AA1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("I8").Select
Cells(Range("AA65536").End(xlUp).Offset(0, 27).Row, 27).Activate
If Not (IsNumeric(ActiveCell)) Then
Cells(Range("AA65536").End(xlUp).Offset(0, 27).Row, 27).Delete
Unload UserfGebäudeNeu
MsgBox "Bitte nur 3-stellige Zahlen!"
UserfGebäudeNeu.TextBox1 = ""
Range("I8").Select
Call Zeigen


End If


UserfGebäudeNeu.TextBox1 = ""
Range("I8").Select


Unload UserfGebäudeNeu

End If
End If

End Sub

============================

Sub Zeigen()
For i = 1 To 200
UserfGebäudeNeu.ListBox1.AddItem (Sheets("Gerät").Cells(i, 27).Value)

Next
UserfGebäudeNeu.Show
End Sub


DANKE SCHONMAL IM VORRAUS!

Mike
Benutzer-Profile anzeigenPrivate Nachricht senden
schatzi
Moderator
Moderator


Anmeldedatum: 09.12.2006
Beiträge: 5725

BeitragVerfasst am: 10.11.2007, 15:30 Nach oben

Hallo!

Frag doch einfach die Länge der TextBox ab:
Code:
If Len(TextBox1.Text) <> 3 Then ...

_________________

Viele Grüße vom Schatzi

------------------------
Ich bin nur noch sporadisch erreichbar!
Bitte hofft nicht auf eine schnelle Beantwortung einer Rückfrage meinerseits!
Jeder andere Helfer darf Rückfragen gerne übernehmen!
Benutzer-Profile anzeigenPrivate Nachricht senden
Pino28
Besserwisser
Besserwisser


Anmeldedatum: 17.10.2007
Beiträge: 93

BeitragVerfasst am: 10.11.2007, 15:45 Nach oben

Hallo!

Wo ist der Smilie der sich an den Kopf haut???

Smile) hätte mir ja auch einfallen können, Schnaki du bist genial, probier ich gleich!


Hast du auch 'ne Idee warum mein Fokus nicht im Textfeld landet??


Gruß

MIke
Benutzer-Profile anzeigenPrivate Nachricht senden
schatzi
Moderator
Moderator


Anmeldedatum: 09.12.2006
Beiträge: 5725

BeitragVerfasst am: 10.11.2007, 15:51 Nach oben

Hallo!

Ich bin gar nicht Schnake...

Aber nichts desto trotz:
Hier ist der Smilie
Image

_________________

Viele Grüße vom Schatzi

------------------------
Ich bin nur noch sporadisch erreichbar!
Bitte hofft nicht auf eine schnelle Beantwortung einer Rückfrage meinerseits!
Jeder andere Helfer darf Rückfragen gerne übernehmen!
Benutzer-Profile anzeigenPrivate Nachricht senden
Pino28
Besserwisser
Besserwisser


Anmeldedatum: 17.10.2007
Beiträge: 93

BeitragVerfasst am: 10.11.2007, 15:55 Nach oben

Ups, auch das noch!! Hab heute wohl zuviel Kaffee gehabt! SORRY.

Schatzi ist natürlich supergenial!

HAst du ne Lösung für mein "Rätsel"?

Danke für den Smilie! HAt geholfen Wink

MIke
Benutzer-Profile anzeigenPrivate Nachricht senden
schatzi
Moderator
Moderator


Anmeldedatum: 09.12.2006
Beiträge: 5725

BeitragVerfasst am: 10.11.2007, 16:01 Nach oben

Hallo!

Hilft es, wenn du die MsgBox nach vorne ziehst?
Code:
If Not Zelle Is Nothing Then
MsgBox "Diese Nummer existiert schon!"
TextBox1.Enabled = True
UserfGebäudeNeu.TextBox1 = ""
UserfGebäudeNeu.TextBox1.SetFocus

_________________

Viele Grüße vom Schatzi

------------------------
Ich bin nur noch sporadisch erreichbar!
Bitte hofft nicht auf eine schnelle Beantwortung einer Rückfrage meinerseits!
Jeder andere Helfer darf Rückfragen gerne übernehmen!
Benutzer-Profile anzeigenPrivate Nachricht senden
Pino28
Besserwisser
Besserwisser


Anmeldedatum: 17.10.2007
Beiträge: 93

BeitragVerfasst am: 10.11.2007, 16:31 Nach oben

Hallo Schatzi!

das funzt auch nicht. der Fokus wird dann in die Listbox1 gesetzt.


MIke
Benutzer-Profile anzeigenPrivate Nachricht senden
Beiträge der letzten Zeit anzeigen:      
Neues Thema eröffnenNeue Antwort erstellen


Ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
Keine neuen Beiträge Mehrere Werte augeben haifischjunge Microsoft Excel Hilfe 4 14.11.2008, 08:38 Letzten Beitrag anzeigen
Keine neuen Beiträge Makro Einfügen/Paste Befehl immer in ... Skatgott Microsoft Excel Hilfe 1 12.11.2008, 16:17 Letzten Beitrag anzeigen
Keine neuen Beiträge Nur bestimmte Werte einer Spalte addi... Juvenis Microsoft Excel Hilfe 3 12.11.2008, 08:08 Letzten Beitrag anzeigen
Keine neuen Beiträge Brauche Hilfe bei doppelten Namen in ... Prime2k8 Microsoft Excel Hilfe 5 08.11.2008, 10:02 Letzten Beitrag anzeigen
Keine neuen Beiträge Werte aus Zelle aufteilen Stroemung Microsoft Excel Hilfe 2 23.10.2008, 09:49 Letzten Beitrag anzeigen


 Gehe zu:   



Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen

Haftungsausschluss/Disclaimer


SMS kostenlos versenden | Battle-Dream | Tuning Forum | Join the YoungGeneration | krankenversicherungsvergleich | Kalorienarme Rezepte!
Versicherungsvergleich | Bürobedarf | Papier | Betten

Ranking-Hits



Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Alle Zeiten sind GMT + 1 Stunde
Deutsche Übersetzung von phpBB.de