Hallo, ich bin mal wieder auf ein kleines Problem gestoßen.
Ich bin dabei mir die Navigationsschaltflächen nachzubauen und bekomme die Anzeigen nicht richtig hin.
Im Moment verwende ich folgenden Code.
Private Sub Navigation_BeforeUpdate(Cancel As Integer)
Private Sub Form_Current()
Me!Navigation = Me.CurrentRecord & " / " & Me.Recordset.RecordCount
End Sub
Leider wird beim öffnen des Formulars immer 1/1 angezeigt und bei einem neuen Datensatz dann z.B. 4/3
Im Netz habe ich dazu viele Einträge gefunden, aber leider konnte mir keine helfen.
Also zeigt doch mal bitte was ihr könnt. :D
Lg
Hallo,
schreib mal in den Steuerelementinhalt des Anzeigefeldes:
=[CurrentRecord] & " / " & Recordset.RecordCount
Da kommt dann leider nur #Name?
Hallo,
[Anhang gelöscht durch Administrator]
Bei einem Access-Gott scheint das ja ganz gut zu funktionieren, leider bin ich noch ein Newbie und dann sieht das ganze so aus.
An der Version 2003 liegt das auch nicht, oder?
edit:
der Fehler liegt auf jeden Fall bei "Recordset.RecordCount", da currentRecord alleine funktioniert.
[Anhang gelöscht durch Administrator]
Hallo,
noch ein Versuch (Eckklammern):
=[CurrentRecord] & " / " & [Recordset].[RecordCount]
Leider nicht. Die neuen Klammern werden beim speichern auch gleich automatisch wieder entfernt.
Hallo,
lad die DB mal hier hoch....
Mist, ich war mir gestern abend so sicher das ich den Fehler hätte.
War dann leider doch nicht so.
Also hier ist mein Sorgenkind.
[Anhang gelöscht durch Administrator]
Hallo,
das sind ja auch 2 felder.
Schreibe in das Linke:
=[CurrentRecord]
und in das Rechte: =Anzahl("*")
Ach ich habe vergessen die beiden unteren Felder zu löschen.
Weiter oben hatten wir es in einem Feld versucht.
Bei deiner Lösung ist es auch so, dass bei einem neuen Datensatz dann z.B. 4/3 angezeigt wird, was unschön aussieht.
Nebenbei schon einmal ein dankeschön an die netten Helfer.
Hallo,
Zitatdass bei einem neuen Datensatz dann z.B. 4/3 angezeigt wird, was unschön aussieht.
Das wird Dir nicht gelingen zu ändern. Egal wie Du es machst. Da musst Du dann VBA bemühen.Das geht doch recht einfach, siehe weiter unten.
Übrigens in der DB funktioniert doch alles, auch das feld weiter oben. Da wird auch 4/3 angeziegt. =Anzahl("*") und [Recordset].[RecordCount] ist das Gleiche bzw. macht das Gleiche.
Dann habe ich wohl ein Problem mit meinem Access.
Bei mir steht in dem Feld wie in dem Bild weiter oben gezeigt wird, nur "#Name?".
Mit VBA habe ich es schon ausprobiert, aber da auch nur den ersten Teil ordentlich hinbekommen.
edit: ich habe die Datenbank jetzt mal auf 2 anderen Systemen mit 2003 und 2007 ausprobiert und im Feld Navigation stand da überall #Name?
Hallo,
ich habe Dir das mal mit VBA gemacht (Im Ereignis "Beim Anzeigen" des Ufos) und etwas verändert.
Schaue mal ob es Dir gefällt.
DB anbei.
Nachtrag:
Du kannst auch mal das versuchen als Steuerelementinhalt:
=[CurrentRecord] & " / " & Anzahl(*)+Abs([newrecord])
einzutragen.
Weiterhin würde ich Dir dringend raten auf Leer und Sonderzeichen (auch den /) in Feldnamen (oder anderen Objektnamen) zu verzichten. Wenn Du hier z.B. nicht aufpasst (Einfluss/Stellung) versucht Access Einfluss durch Stellung zu teilen. In langen Ausdrücken suchst Du da lange nach dem Fehler.
Auch die Namen sind zu lang. Z.B. "Thema für nächsten Kontakt"
[Anhang gelöscht durch Administrator]
Super, das scheint zu klappen.
Viele Dank, dass hat mich wirklich fast zur Verzweifelung gebracht.
Das mit den Namen werde ich mir merken und ändern.
Jetzt muss ich nur noch eine Suchfunktion für das Unterformular erstellen und dann kann ich mich wieder Sachen widmen von denen ich mehr verstehe. :D
Jetzt werde ich erst einmal den Danke-Icon ausprobieren. :)
edit: sorry, bin wohl scheinbar schon zu blöd um einen roten Stern im Lösungsbeitrag zu finden.
Zitat von: MarkusN am September 10, 2010, 10:58:06
Dann habe ich wohl ein Problem mit meinem Access.
Bei mir steht in dem Feld wie in dem Bild weiter oben gezeigt wird, nur "#Name?"...
Ist bei mir auch so/gewesen.
Schreibe mit Eckklammern macht Access beim Speichern-klick (auf Diskette) oder Enter die automatisch wek.
Mache ohne macht Access die genau anders rum/wider automatisch rein.
Elal wie kommt immer Name-Fehler raus.
aber mit
=[CurrentRecord] & "/" & Anzahl(*)+Abs([newrecord])
funzt auf jeden fall.