Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: ---> 4. September: Office-Treffen Rhein-Ruhr <-
Automatische Positionnummer vergeben
zurück: Werte in Formulare übergeben weiter: Formatierung Excel Ausgabe Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Access00815
Excel-Kenner, Access Anfänger


Verfasst am:
10. Feb 2010, 11:33
Rufname:

Automatische Positionnummer vergeben - Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

Hallo zusammen,

ich komme mit der automatischen Positionnummer nicht weiter und erbitte eure tatkräftige Hilfe.

Beschreibung:
Ich habe im einem Formular (F_01_Erfassung) ein UF (PositionenUnterformular2)
Verknüpft sind die beiden über ("Tabelle db" ID =Autowert") und der (Tabelle "Positionen" Auftrags_ID = Zahl)

Die Tabelle "Positionen" enthält das Feld "Position"

Das Feld "Position" soll mit anlegen eines neuen Auftrags automatisch bei 1 und jede weitere Position mit +1 anfangen.

Hab schon was mit DMAX gefunden. Kann damit aber leider nix anfangen.

Ziel: Was für einen Code gibt es, der mir diese Aufgabe übernimmt? Wo muß ich ihn hinschreiben.

Grüße
Kai
MissPh!
Office-VBA-Programmiererin


Verfasst am:
10. Feb 2010, 12:07
Rufname:
Wohnort: NRW


AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

Hallo,

du könntest folgenden Ausdruck als Standardwert der Positionsnummer eintragen:
Code:
=NZ(DMAX("Position";"Positionen";"Auftrags_ID=" & parent.[ID]),0)+1

_________________
Gruß MissPh!
(HTH - hope to help)
Access00815
Excel-Kenner, Access Anfänger


Verfasst am:
10. Feb 2010, 12:18
Rufname:

AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

Hallo MPH,

muss ich den Code im Standartwert des UF "Position" oder auf der Tabelle "Positionen" eintragen?

Ich habs im UF "Position" versucht. Es kommt eine Fehlermeldung:
" Ausdruck ist syntaktisch falsch"

Könntest Du mir den Code beschreiben. Damit ich ihn verstehen kann.
MissPh!
Office-VBA-Programmiererin


Verfasst am:
10. Feb 2010, 12:19
Rufname:
Wohnort: NRW

AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

Ja, sorry, mach mal aus dem Komma auch noch ein Semikolon.

Erklärung:
Mit der DMax-Funktion liest du die höchste Positionsnr. des aktuellen Auftrags aus.
Die NZ-Funktion sorgt dafür, dass auch ein Wert (nämlich 0) zurückgegeben wird, wenn es noch gar keine Position gibt.
+1 am Ende liefert die neue Nummer.

_________________
Gruß MissPh!
(HTH - hope to help)
Access00815
Excel-Kenner, Access Anfänger


Verfasst am:
10. Feb 2010, 12:39
Rufname:


AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

es hat funktioniert.

Problem:
Wenn ich im meinem Formular Erfassung jetzt auf neuen Datensatz gehe, dann steht im Feld Position "Fehler"

Sobald die ID des Auftrags erzeugt wird, ist die Meldung weg und die 1 wird angezeigt.

Wenn ich jetzt die erste Position erfasst habe und mit der zweiten position weitermachen will, schreibt er mit als zweite Position auch eine 1 rein.
Wenn ich das Formular aktualisiere wird aus der zweiten 1 eine 2. Wie kann ich das umgehen?
MissPh!
Office-VBA-Programmiererin


Verfasst am:
10. Feb 2010, 12:45
Rufname:
Wohnort: NRW

AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

Du kannst, um diese Fehler zu vermeiden, die Berechnung direkt vor der Speicherung durchführen, z.B. im Ereignis Vor Aktualisierung des Formulars.

Code:
Private Sub Form_BeforeUpdate(Cancel As Integer)
    If Me.NewRecord Then
        Me!Position = NZ(DMAX("Position","Positionen","Auftrags_ID=" & Me.parent!ID),0)+1
    End If
End Sub

_________________
Gruß MissPh!
(HTH - hope to help)
Access00815
Excel-Kenner, Access Anfänger


Verfasst am:
10. Feb 2010, 14:45
Rufname:

AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

wenn ich den Code VOR AKTUALISIEREN einbaue und der Standardwert den obigen Code eingeben hab, kommt leider kein Ergebnis.

Wie kann ich das Unterformular nach der Eingabe eines Feldes aktualisieren?
Ich habs schon mit einem Makro versucht, aber es funktioniert leider nicht.
MissPh!
Office-VBA-Programmiererin


Verfasst am:
10. Feb 2010, 14:59
Rufname:
Wohnort: NRW

AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

Zitat:
und der Standardwert den obigen Code eingeben hab
Wenn ich das richtig verstehe, machst du nun beides - so war das aber nicht gemeint. Die Ereignisprozedur ersetzt die Einstellung des Standardwertes.
Hast du die Ereigniseigenschaft auf "Ereignisprozedur" eingestellt?!

Wozu willst du das Unterformular aktualisieren?

_________________
Gruß MissPh!
(HTH - hope to help)
Access00815
Excel-Kenner, Access Anfänger


Verfasst am:
10. Feb 2010, 15:13
Rufname:


AW: Automatische Positionnummer vergeben - AW: Automatische Positionnummer vergeben

Nach oben
       Version: Office 2007

Super. Wir haben es hinbekommen. Smile

Dachte ich erlebe es gar nicht mehr.

Vielen Dank PH
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum 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 nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Programmierung / VBA: Nummern automatisch vergeben 15 bauermar 304 09. März 2010, 10:20
MissPh! Nummern automatisch vergeben
Keine neuen Beiträge Access Programmierung / VBA: Via Access Excel-Blattnamen vergeben 2 woolfinator 104 20. Okt 2009, 11:18
woolfinator Via Access Excel-Blattnamen vergeben
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Abfrage "Vormonat" 7 Vollkorn 2349 09. Sep 2009, 12:55
Sven R. Automatische Abfrage "Vormonat"
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Formatierung des SQL-Code 4 cheeZy 198 03. Jul 2009, 10:39
Z.Mart Automatische Formatierung des SQL-Code
Keine neuen Beiträge Access Hilfe: index vergeben? 1 sansan 96 28. Jun 2009, 19:57
jens05 index vergeben?
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Reihenfolge erweitert...wie? 0 deluxe1978 100 14. Nov 2008, 15:51
deluxe1978 Automatische Reihenfolge erweitert...wie?
Keine neuen Beiträge Access Programmierung / VBA: Automatische Msg-box wenn Zahlungsdatum erreicht 4 huns 310 21. Apr 2008, 15:49
huns Automatische Msg-box wenn Zahlungsdatum erreicht
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Nummerierung innerhalb von Abfragen 6 hian0015 3544 22. Jan 2007, 19:04
Willi Wipp Automatische Nummerierung innerhalb von Abfragen
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Liste von sortierten Kalenderwochen oder Monate 2 kodu 1525 11. Jul 2006, 17:32
derArb Automatische Liste von sortierten Kalenderwochen oder Monate
Keine neuen Beiträge Access Formulare: automatische aktualisierung nach Uhrzeit 6 stragri 709 26. Jun 2006, 18:09
stragri automatische aktualisierung nach Uhrzeit
Keine neuen Beiträge Access Programmierung / VBA: Laufende Nummer vergeben 15 Gast0207 1319 17. März 2006, 10:46
kitty Laufende Nummer vergeben
Keine neuen Beiträge Access Hilfe: Automatische Tabellenverknüpfung 1 jensi79 2124 05. Feb 2006, 18:12
cablit Automatische Tabellenverknüpfung
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Excel-Formeln für den Rangkorrelationskoeffizienten nach Spearman