Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Klaus S. aus B am August 09, 2011, 09:54:59

Titel: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: Klaus S. aus B am August 09, 2011, 09:54:59
Hallo,

ich habe beim Suchen keinen passenden Beitrag gefunden.

Ich möchte aus einem Listenfeld den Wert der zweiten Spalte aus der ersten Zeile in ein Feld (Start-Datum) schreiben und den Wert der dritten Spalte der letzten Zeile in ein anderes Feld (End-Datum) schreiben.

Ich habe aber nichts gefunden, wie ich die einzelenen Felder adressieren kann (oder falsche Syntax verwendet) ;-)

Hat jemand einen Tipp für mich?

Gruß
Klaus
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: DF6GL am August 09, 2011, 11:15:33
Hallo,

1)

Me![Start-Datum]=Me!Listenfeld.Column(1,0)


2)

Me![End-Datum]=Me!Listenfeld.Column(2,Me!Listenfeld.Listcount-1)




Bist Du sicher, dass das zielführend ist?
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: Klaus S. aus B am August 09, 2011, 15:23:19
Hallo DF6GL,

absolut!  ;)

Vielen Dank!

Ich habe zu einem Projekt mehrere Einsätze (verschiedene Aufgaben). Ich will mehrere Einsätze zu einer reise zusammenfassen und die Daten für den Reiseantrag aus den Einsätzen übernehmen. Eine Variante ist das erste Datum aus der Auflistung von Einsätzen als Start und das späteste Datum als Ende zu übernehmen. Und so klappt das am Einfachsten.

Gruß
Klaus
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: DF6GL am August 09, 2011, 15:25:36
Hallo,

na denn, verhaspele Dich aber nicht mal bei der Sortierung des Listenfeldes...   ;)
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: MzKlMu am August 09, 2011, 20:37:40
Hallo,
ZitatEine Variante ist das erste Datum aus der Auflistung von Einsätzen als Start und das späteste Datum als Ende zu übernehmen. Und so klappt das am Einfachsten.
Mit DMax() und DMin() mit der EinsatzID als Kriterium wäre das noch einfacher und vor allen Dingen sicherer.
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: Klaus S. aus B am August 09, 2011, 21:36:29
HAllo,

???  ??? Ich steh' etwas auf dem Schlauch.



DMax() und DMin() kenn ich nicht. Wie ist da sie Syntax? Wo baue ich das ein?

Gruß
KLaus
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: database am August 09, 2011, 22:06:16
Hallo,

schau mal in die VBA-Hilfe und gib als Suchbegriff DMin oder DMax ein...

Da gibt es eine ziemlich genaue Beschreibung dessen was diese Aggregate zu leisten im Stande sind und wie deren Syntax lautet.
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: Klaus S. aus B am August 10, 2011, 08:34:31
HAllo Peter,

auch nicht schlecht, die Funktion. Werde mal etwas damit rumspielen.
Für meine Zecke ist diese Funktion etwas umständlich, da ich die "criteria" relativ umständlich definieren muss, da die Abfrage nur auf eine Tabelle zu gehen scheint. Ich schränke meine Daten aber über das Listfeld schon mal ein, so daß ich es da etwas einfacher habe.

Gruß
Klaus
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: MzKlMu am August 10, 2011, 08:43:33
Hallo,
ZitatFür meine Zecke ist diese Funktion etwas umständlich, da ich die "criteria" relativ umständlich definieren muss, da die Abfrage nur auf eine Tabelle zu gehen scheint.
Nein, das geht genau so gut auch mit einer Abfrage. Und die Kriterien musst Du so und so definieren.
ZitatIch schränke meine Daten aber über das Listfeld schon mal ein, so daß ich es da etwas einfacher habe.
Diese Einschränkung passt auch in den beiden Funktionen. Ziemlich genau gleich.  Auf das Listenfeld solltest Du ersatzlos verzichten, wenn es nur zu dem ursprünglichen Zweck verwendet wird.
Wie sieht denn die Abfrage für das Listenfeld aus?
Titel: Re: Bestimmte Felder aus verschiedenen Spalten eines Listenfelds auslesen
Beitrag von: Klaus S. aus B am August 10, 2011, 08:57:12
Hallo Peter,

ich habe keine "feste" Abfrage (als Objekt) hinter dem Listenfeld, sondern nur in der Datenherkunft eine Abfrage über mehrere Tabellen definiert.
Ich habe im Formualr zwei Listenfelder drin, die auch für die Übersicht hilfreich sind, also brauche tue ich sie auf alle Fälle.

Man wählt einen Mitarbeiter aus und im ersten Listenfeld erscheinen alle Projekte, an denen er arbeitet. In dieser Liste wählt man jetzt ein Projekt aus und dann kommen alle Einsätze, die für diesem Mitarbeiter in diesem Projekt geplant sind.

Jetzt muss man entscheiden, welche Daten man für die Reise angibt. In den meisten Fällen wird das von den Einsätzen im zweiten Listenfeld das früheste und das späteste Datum sein. Daher mein COde für das Listenfeld. Man kann aber auch noch einzelne Einsätze auswählen und von denen Start und/oder Enddatum wählen, oder die Daten von Hand eingeben.

Aber für andere Einsatzfälle kann ich mir das DMax() als sehr hilfreich vorstellen.

Gruß
Klaus