collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 58
  • Punkt Versteckte: 2
  • Punkt Mitglieder: 8
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 13804
  • stats Beiträge insgesamt: 63512
  • stats Themen insgesamt: 8606
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 16
  • stats Am meisten online: 415

Autor Thema: Datensätze in einem Unterformular zählen  (Gelesen 323 mal)

Offline Zipideus

  • Newbie
  • Beiträge: 20
Datensätze in einem Unterformular zählen
« am: Dezember 07, 2017, 13:09:06 »
Hallo zusammen,

ich bin neu hier und stelle möglicherweise meine Frage an falscher Stelle.
Bitte lyncht mich nicht gleich deswegen.

Meine Frage lautet schlicht.

Wie kann ich aus einem Unterformular das über eine 1 : n Beziehung mit einem Hauptformular verknüpft ist die aktuellen Datensätze ermitteln ?

Ich möchte also eine Zahl z.B. 8 DS gleich Anzahl "8" ermitteln und an die Variable x übergeben.
Zu einem anderen Datum kann das Unterformular jedoch mehr oder weniger DS beinhalten. z.B. "5" oder "12" DS. Dann möchte ich diese Zahl an x übergeben.

Ich habe es versucht mit

x = DCount("*", "Abfrage")

Das funktioniert nur unzureichend da ich hier zwar (in einer MsgBox) ein Ergebnis erhalte, aber nicht das gewünschte. Das Ergebnis ist z.B. wenn ich drei Einträge mit verschiedenen Datum im HF habe. Dann die Summe der Datensätze (im UF) aller Datums.

Ich möchte aber nicht alle Datensätze des UF, sondern nur die Datensätze des (UF) des letzten Datum (des HF) zählen.

Zu diesem Problem finde ich momentan keine Lösung.
Wer kann mir unter die Arme greifen.

Hier im Forum habe ich gesehen das es ähnliche Fragestellungen schon gab.
Die Lösung konnte ich jedoch aus den Antworten nicht heraus lesen.

Nun bin ich echt gespannt - Vielleicht ist die Lösung ja ganz einfach.

Viele Grüße einstweilen.
 

Offline datekk

  • Access-Meister
  • ***
  • Beiträge: 674
Re: Datensätze in einem Unterformular zählen
« Antwort #1 am: Dezember 07, 2017, 13:24:08 »
Hast Du eine Where Klausel in die DCount Abfrage eingebaut? x=DCount("*","Tabelle","Datum=" & me.datumsfeld) ??
 

Online DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23091
Re: Datensätze in einem Unterformular zählen
« Antwort #2 am: Dezember 07, 2017, 13:27:42 »
Hallo,

Zitat
Wie kann ich aus einem Unterformular das über eine 1 : n Beziehung mit einem Hauptformular verknüpft ist die aktuellen Datensätze ermitteln ?


im Unterform:

.
.
Dim x as Long
Me.Recordsetclone.Movelast
x= Me.RecordsetClone.Recordcount
Msgbox x
.
.


Zitat
Das funktioniert nur unzureichend da ich hier zwar (in einer MsgBox) ein Ergebnis erhalte, aber nicht das gewünschte. Das Ergebnis ist z.B. wenn ich drei Einträge mit verschiedenen Datum im HF habe. Dann die Summe der Datensätze (im UF) aller Datums.

Ich möchte aber nicht alle Datensätze des UF, sondern nur die Datensätze des (UF) des letzten Datum (des HF) zählen.

Dem kann ich nur dahingehend folgen, als dass die dahinterliegenden Tabellen nicht normalisiert sind.
Wieso gibt es z. B. 3  Daten (Datumsfelder) im Haupt(einzel-)form?

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 6940
Re: Datensätze in einem Unterformular zählen
« Antwort #3 am: Dezember 07, 2017, 13:31:21 »
Hallo,
Du kannst Im Formularkopf des Ufos auch einfach ein Feld anlegen mit folgendem Steuerelementinhalt:
=Anzahl(*)Zeigt immer die Datensatzzahl des Ufos.
Im Hafo kannst Du Dich auf das Feld des Ufos beziehen.
Es geht auch mit DCount und einer Whereklausel.
Dabei muss das Datum im ISO Format (JJJJ/MM/TT) übergeben werden oder man nimmt die reine Zahl.
X = DCount("*", "TabellenName";"Int(DatumsfeldTabelle) = & Int(Me.DatumsfeldFormular)
Warum muss die Datensatzzahl überhaupt in eine Variable und warum auf das Hafo ?
Gruß
Klaus
 

Offline Zipideus

  • Newbie
  • Beiträge: 20
Re: Datensätze in einem Unterformular zählen
« Antwort #4 am: Dezember 07, 2017, 14:19:16 »
Also nochmal wenn ich mich unklar ausgedrückt habe.

1.) Die Anzahl muss nicht auf das Hauptformular - Davon war keine Rede.
2.) Ich habe natürlich keine drei Datum im Hauptformular. Das war nur ein Beispiel. Ich habe z.B. drei Datensätze die ich durch klicken kann. Also drei verschiedene Datum. An jedem Datum hängen unterschiedlich viele Datensätze in einem Unterformular.
3.) Die Zahl benötige ich für eine Schleife um den Vorgänger Datensatz zu duplizieren in ein neues (4 Datum) ohne alle Datensätze per Hand neu anzulegen.

Die Vorschläge werde ich ausprobieren und natürlich Bericht erstatten.

Vielen Dank aber schon mal jetzt für alle die mir hier Tipps gegeben haben.

Wie ich nun damit zurecht komme wird sich zeigen  :)

Möglicherweise muss ich nochmal Fragen

Dankeschön
 

Offline Zipideus

  • Newbie
  • Beiträge: 20
Re: Datensätze in einem Unterformular zählen
« Antwort #5 am: Dezember 07, 2017, 15:07:56 »
Also mit diesem Code passiert etwas - wenn auch das falsche



Dim x as LongEr zeigt mir die Anzahl der Datensätze im HF

Ich jedoch hätte gerne die aus dem Unterformular
Me.Recordsetclone.Movelast
x= Me.RecordsetClone.Recordcount
Msgbox x

Er zeigt mir die Anzahl der Datensätze im HF

Ich jedoch hätte gerne die aus dem Unterformular

Was mache ich falsch ???
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 6940
Re: Datensätze in einem Unterformular zählen
« Antwort #6 am: Dezember 07, 2017, 15:18:28 »
Hallo,
es gab ja noch mehr Vorschläge, nicht nur den einen.

Um einen Datensatz zu duplizieren braucht es weder eine Schleife (wozu auch) noch die Anzahl der Datensätze das kann eine Anfügeabfrage mit einer Zeile VBA Code.

Über welches Feld ist denn Hafo und Ufo verknüpft, über das Datum ?


« Letzte Änderung: Dezember 07, 2017, 15:34:25 von MzKlMu »
Gruß
Klaus
 

Offline Zipideus

  • Newbie
  • Beiträge: 20
Re: Datensätze in einem Unterformular zählen
« Antwort #7 am: Dezember 07, 2017, 15:36:43 »
Ja - ich bin dran
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 6940
Re: Datensätze in einem Unterformular zählen
« Antwort #8 am: Dezember 07, 2017, 16:03:54 »
Hallo,
es ist ja auch gar nicht sicher, dass Du das überhaupt brauchst. Siehe meine Hinweise in #6.
Gruß
Klaus
 

Online DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23091
Re: Datensätze in einem Unterformular zählen
« Antwort #9 am: Dezember 07, 2017, 16:14:31 »
Hallo,

Zitat
Er zeigt mir die Anzahl der Datensätze im HF

Ich jedoch hätte gerne die aus dem Unterformular

Was mache ich falsch

ich hatte geschrieben:

Zitat
im Unterform:

Offline Zipideus

  • Newbie
  • Beiträge: 20
Re: Datensätze in einem Unterformular zählen
« Antwort #10 am: Dezember 07, 2017, 16:23:23 »
Also ich habe 2 Tabellen

T002 mit dem Feld Stände_ID (Autowert und Primärschlüssel) ist verknüpft mit T003 Stände_ID (Zahl)
T003 wiederum hat eine Daten_ID (Autowert und Primärschlüssel)

Also in T002 stehen die verschiedenen Stände und solche Sachen wie
-Wann wurde es erfasst
-Wer hat es erfasst
-Ist es eine Vorab Vesion oder eine Finale Version
-Welcher Preisstand wurde verwendet usw.

In der T003 stehen hingegen
- Wer war an der Entstehung der Kosten beteiligt (Werkstatt - Labor - Logistik usw.) diese Daten können sehr unterschiedlich sein. Mal sind es 35 Bereiche und dann wieder nur 12. Von daher sollte sich x variabel gestalten lassen.

Übrigens mit = Anzahl(*) bekomme ich sämtliche Datensätze gezählt die jemals erfasst wurden. Unabhängig vom Datum.

Meines Erachtens muss ich irgendwie das Datum mit in´s Spiel bringen.

So Sinngemäß

- Nehme Datum HF gehe ins UF und zähle.

Und genau das Access nicht

Entweder ich bekomme als Ergebnis die Anzahl wieviele Preislisten es gibt oder eben alle beteiligten Bereich aber nicht nach Datum sondern unabhängig.

X = DCount("*", "TabellenName";"Int(DatumsfeldTabelle) = & Int(Me.DatumsfeldFormular)

habe ich auch probiert - hier kommen Fehlermeldungen. Fehlt wohl ein "

Vielleicht ist auch das Datumsformat falsch

Ich weiß es nicht
 

Online DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23091
Re: Datensätze in einem Unterformular zählen
« Antwort #11 am: Dezember 07, 2017, 16:35:39 »
Hallo,


lad die DB besser mal hier hoch  (komprimiert/repariert, datenreduziert und gezippt) , damit man sieht, was nun Stand der Dinge ist.... 

Offline Zipideus

  • Newbie
  • Beiträge: 20
Re: Datensätze in einem Unterformular zählen
« Antwort #12 am: Dezember 07, 2017, 16:44:11 »
Sehr ungern - kann ich das auch privat schicken ?
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 6940
Re: Datensätze in einem Unterformular zählen
« Antwort #13 am: Dezember 07, 2017, 16:53:48 »
Hallo,
man kann (bzw. sollte) eine Beispieldb mit anonymen Daten erstellen und die dann hochladen.

Zitat
Die Zahl benötige ich für eine Schleife um den Vorgänger Datensatz zu duplizieren
Mir erschließt sich immer noch nicht, wozu Du zum Kopieren eines Datensatzes die Anzahl brauchst. Und eine Schleife braucht es da auch nicht.
Gruß
Klaus
 

Offline Zipideus

  • Newbie
  • Beiträge: 20
Re: Datensätze in einem Unterformular zählen
« Antwort #14 am: Dezember 07, 2017, 17:10:26 »
OKAY - Werde die DB etwas modifizieren und dir danach hochladen

Das wird aber heute nicht mehr passieren.

Das mit der Schleife habe ich mir einfallen lassen.
Wenn das auch einfacher geht soll es mir recht sein.

Ich werde die DB dann voraussichtlich morgen im laufe des Tages hochladen

Vielen Dank das Du Dich der Sache mal annehmen möchtest.
Das ist ja schon mal ein Erfolg

Melde mich wieder

Gruß Hans