Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Listenfeld soll Datensatz aufrufen
zurück: Wort aus Kombifeld in bestehende Tabelle übertragen weiter: DateDiff und Now() gleichzeitig Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Rückfrage Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Blackangel
Im Profil kannst Du frei den Rang ändern


Verfasst am:
07. Aug 2007, 13:08
Rufname:

Listenfeld soll Datensatz aufrufen - Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Hallo,

ich habe ein Formular für Reparaturen. Ich habe eine Abfrage gemacht in der nur alle offenen Reparaturen mit dazugehörigem Kunden auftauchen. Das klappt auch soweit.
Es ist ein Unterformular enthalten, das die Reparaturen zeigt und man auch bearbeiten kann.

Ich möchte jetzt eine Listenfeld haben in dem ich z.b. ein Kunden aufrufen kann und dieser angzeigt wird auch wenn keine offen Reparatur mehr vorhanden ist.

Kann mir jemand helfen?
JörgG
Access-Team


Verfasst am:
07. Aug 2007, 16:40
Rufname:
Wohnort: b. Dresden


AW: Listenfeld soll Datensatz aufrufen - AW: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Hallo,

Question das ist nicht gerade viel Input, wie lautet denn das Kriterium richtig?

Die einfache Variante wäre den Filter zuverwenden. Entferne in der Hauptformular-Abfrage das Kriterium "offene Reparaturen". Im Formularereignis "beim Öffnen" setzt Du dann den gewünschten Filter:
Code:
Private Sub Form_Open(Cancel As Integer)
    Me.Filter = "Reparaturen = False"  'identisch dem ehem Abfragekriterium
    Me.FilterOn = True
End Sub

Question Wie soll denn die Listenfeldauswahl erfolgen, bei Doppelklick?
Question Was zeigt das Listenfeld an, steht in der 1. (gebundenen) Spalte die KundenNr?
Code:
Private Sub Liste_DblClick()
   'KundenNr = Text
    Me.Filter = "KundenNr = '" & Me!Liste & "'"
   'KundenNr = Zahl
   'Me.Filter = "KundenNr = " & Me!Liste
    Me.FilterOn = True
End Sub

Idea Ansonsten poste bitte den SQL-Code der Hauptformular- und der Listenfeld-Abfrage und verrate welchen Datentyp (Text/Zahl) die relevanten Felder besitzen und wo sie sich befinden (Hfo/Ufo).

_________________
MfG, Jörg Very Happy

Bitte das Feedback nicht vergessen.
Blackangel
Im Profil kannst Du frei den Rang ändern


Verfasst am:
09. Aug 2007, 10:40
Rufname:

AW: Listenfeld soll Datensatz aufrufen - AW: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

So ich habe heute mal wieder zeit gefunden.

Also nochmal ich glaube es war nicht ganz verständlich.

Ich habe ein Formular, in dem links oben die Kundendaten stehen bzw. über ein Button ein neuer Kunde(wird gespeichert in tblkunden) angelegt werden kann.
Rechts daneben sollen alle Kunden aufgelistet werden die es gibt. (Listenfeld mit doppelklick soll Kunden aufrufen)
Nochmal rechts daneben sollen alle Reparaturen(Tabelle tblreparaturen) die offen sind angezeigt werden.(Listenfeld soll Reparatur im Unterformular aufrufen, Doppelklick)

So darunter ist das Unterformular in dem man neue Reparaturen erfassen kann oder abarbeiten. (Tabelle Reparaturen).

Die Daten für die Kunden und das Listenfeld Reparaturen erhält er über die Abfrage abfkdreparatur.

In der Abfrage abfkdreparatur ist der unter "Reparaturauftag erledigt" das Kriterium "Wie Nein" angeben, da dies über ein Kontrollkästchen angeklickt wird.

Ich habe es mit dem ersten Code probiert(angepasst) leider mag er das nicht, er will dann immer den einen Parameterwert beim öffnen.

Hiermal zur Ansicht:
Code:
Private Sub Form_Open(Cancel As Integer)
    Me.Filter = "Reparaturauftrag erledigt = Wie Nein"  'identisch dem ehem Abfragekriterium
    Me.FilterOn = True
End Sub
Willi Wipp
Moderator


Verfasst am:
09. Aug 2007, 12:14
Rufname:
Wohnort: Raum Wiesbaden

Re: Listenfeld soll Datensatz aufrufen - Re: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Hi Blackangel,

verzichte besser auf Leerzeichen und Sonderzeichen im Objektnamen
und kopiere das Kriterium (WHERE-Klausel) besser aus der SQL-Ansicht Wink
Code:
    Me.Filter = "[Reparaturauftrag erledigt] = False"

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Blackangel
Im Profil kannst Du frei den Rang ändern


Verfasst am:
10. Aug 2007, 15:09
Rufname:


AW: Listenfeld soll Datensatz aufrufen - AW: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Blackangel am 09. Aug 2007 um 12:37 hat folgendes geschrieben:
So ich binein wenig weiter und kann mal wieder genaueres dazuschreiben.

Also ich möchte das Listenfeld mit den Reparaturen gleich beim öffnen gefiltert haben und dies soll auch anklickbar sein, das der Auftrag im UNterformular aufgerufen wird.

Das Listenfeld der Kunden und die Kunden selbst sollen nicht gefiltert werden.

Ich hoffe das hilft euch weiter mir zu helfen!

Hier mal der Code für das ganze.
Liste80 ist die Kundenliste
Liste88 ist die Liste wo nur alle Reparaturen angezeigt werden soll!
Code:
Option Compare Database
Option Explicit 'Hinzugefuegt by Willi Wipp ;-)

Private Sub Form_Open(Cancel As Integer)
    Me.Filter = "[Reparaturauftrag erledigt] = False"
    Me.FilterOn = True
End Sub

Private Sub Neuer_KD_Click()
On Error GoTo Err_Neuer_KD_Click
    DoCmd.GoToRecord , , acNewRec
Exit_Neuer_KD_Click:
    Exit Sub
Err_Neuer_KD_Click:
    MsgBox Err.Description
    Resume Exit_Neuer_KD_Click
End Sub

Private Sub Kundenliste_AfterUpdate()
    ' Den mit dem Steuerelement übereinstimmenden Datensatz suchen.
    Dim rs As Object

    Set rs = Me.Recordset.Clone
    rs.FindFirst "[Name] = '" & Me![Kundenliste] & "'"
    Me.Bookmark = rs.Bookmark
    Me.FilterOn = False
End Sub

Private Sub Liste80_AfterUpdate()
    ' Den mit dem Steuerelement übereinstimmenden Datensatz suchen.
    Dim rs As Object

    Set rs = Me.Recordset.Clone
    rs.FindFirst "[tblkunden.Kundennummer] = " & Str(Me![Liste80])
    Me.Bookmark = rs.Bookmark
End Sub

Private Sub Liste88_AfterUpdate()
    ' Den mit dem Steuerelement übereinstimmenden Datensatz suchen.
    Dim rs As Object

    Set rs = Me.Recordset.Clone
    rs.FindFirst "[Name] = '" & Me![Liste88] & "'"
    Me.Bookmark = rs.Bookmark
End Sub
JörgG
Access-Team


Verfasst am:
10. Aug 2007, 15:50
Rufname:
Wohnort: b. Dresden

AW: Listenfeld soll Datensatz aufrufen - AW: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Hallo,

Wichtig: im VBA-Fenster, Menüleiste - Extras - Optionen - Editor - Variablendeklaration erforderlich - Häkchen setzen

Funktioniert der bisherige Code? Liste80 liefert eine Kundennr als Text in seiner 1. Spalte? Erstelle mal eine Kopie Deiner DB und ändere danach den Code.
Code:
Option Explicit
Option Compare Database

Private Sub Form_Open(Cancel As Integer)
    Me.Filter = "[Reparaturauftrag erledigt] = False"
    Me.FilterOn = True
End Sub

Private Sub Neuer_KD_Click()
    DoCmd.GoToRecord , , acNewRec
End Sub

Private Sub Kundenliste_DblClick() 'Doppelklick
    Me.FilterOn = False
    Me.Recordset.Clone.FindFirst "[Name] = '" & Me!Kundenliste & "'"
    Me.Bookmark = Me.Recordset.Clone.Bookmark
End Sub

Private Sub Liste80_DblClick()  'Doppelklick
    Me.Recordset.Clone.FindFirst "Kundennummer = '" & Me!Liste80 & "'"
    Me.Bookmark = Me.Recordset.Clone.Bookmark
End Sub

Private Sub Liste88_DblClick()  'Doppelklick
    Me.Recordset.Clone.FindFirst "[Name] = '" & Me![Liste88] & "'"
    Me.Bookmark = Me.Recordset.Clone.Bookmark
End Sub

Zitat:
Liste88 ist die Liste wo nur alle Reparaturen angezeigt werden soll!
Poste bitte mal deren Datensatzherkunft (SQL-Ansicht).
_________________
MfG, Jörg Very Happy

Bitte das Feedback nicht vergessen.
Blackangel
Im Profil kannst Du frei den Rang ändern


Verfasst am:
10. Aug 2007, 16:09
Rufname:

AW: Listenfeld soll Datensatz aufrufen - AW: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Moin,

ja die Liste hat bisher funktioniert und die Kunden alle angezeigt.

Hier die Datensatzherkunft:
Code:
SELECT tblKunden.Kundennummer, [Name], [Reparaturnummer]
FROM   abfreparaturalle;
Wenn ich jetzt das Formular öffne sagt er" PArameterwerte eingeben" Weiter unten dann"Reparaturauftrag erledigt"
JörgG
Access-Team


Verfasst am:
10. Aug 2007, 17:33
Rufname:
Wohnort: b. Dresden

AW: Listenfeld soll Datensatz aufrufen - AW: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Hallo,

zeigt denn die Abfrage (wenn Du sie alleine öffnest) alles an was Du willst?

Die Parameterabfrage ist garantiert derselbe Fehler auf den Willi oben schon hingewiesen hat. Vermutlich hier: abfreparaturalle --> [Reparaturauftrag erledigt], oder in der Datensatzherkunft eines anderen Listenfeldes.

_________________
MfG, Jörg Very Happy

Bitte das Feedback nicht vergessen.
Blackangel
Im Profil kannst Du frei den Rang ändern


Verfasst am:
13. Aug 2007, 12:18
Rufname:

AW: Listenfeld soll Datensatz aufrufen - AW: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Also die Abfrage zeigt alles an. Egal ob erledigt oder nicht.

Reparaturauftrag erledigt wird nur durch ein Haken gesetzt, das heißt ich habe ja nur zwei Werte entweder 0(Ja) oder -1(Nein).

Die Schreibweisen habe ich überprüft das passt alles, das Formular hat als Hauptdatensatzherkunft die Abfrage abfreparaturalle,
darin enthalten sind:
Kundennummer(verknüpft mit Tabelle tblreparatur);Name;Straße;PLZ;Wohnort alles aus der Tabelle tblkunden
aus der Tabelle tbl reparatur ist folgendes
Kundennummer(verknüpft mit Tabelle tblkunden);Reparaturnummer;Reparaturauftrag erledigt.
Willi Wipp
Moderator


Verfasst am:
13. Aug 2007, 15:18
Rufname:
Wohnort: Raum Wiesbaden


Re: Listenfeld soll Datensatz aufrufen - Re: Listenfeld soll Datensatz aufrufen

Nach oben
       Version: Office 2k (2000)

Hi Blackangel,

kannst Du eine auf das Wesentliche reduzierte Beispiel-DB mit anonymisierten Demo-Daten online stellen?

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
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 Tabellen & Abfragen: Mehrfachauswahl in Listenfeld als Abfrageparameter möglich? 3 esprene 1395 26. Aug 2005, 14:25
cablit Mehrfachauswahl in Listenfeld als Abfrageparameter möglich?
Keine neuen Beiträge Access Tabellen & Abfragen: unlöschbaren Datensatz erstellen 1 Vincent_Vega 899 15. Aug 2005, 21:45
stpimi unlöschbaren Datensatz erstellen
Keine neuen Beiträge Access Tabellen & Abfragen: neuen Datensatz anlegen falls wert nich vorhanden ist 1 AccessAlex 874 08. Aug 2005, 22:18
Gast neuen Datensatz anlegen falls wert nich vorhanden ist
Keine neuen Beiträge Access Tabellen & Abfragen: acces-Daten mit Excel aufrufen 1 websurfer 500 01. Jul 2005, 12:31
Gast acces-Daten mit Excel aufrufen
Keine neuen Beiträge Access Tabellen & Abfragen: Datensatz automatisch kopieren??? 0 Edelschnitt 701 11. Mai 2005, 19:41
Edelschnitt Datensatz automatisch kopieren???
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragen im Formular aufrufen, automatisch bestätigen 3 Calvin22 1606 12. Apr 2005, 12:12
Willi Wipp Abfragen im Formular aufrufen, automatisch bestätigen
Keine neuen Beiträge Access Tabellen & Abfragen: Hintergrundfarbe in Datensatz 1 Rheinbote 900 24. Feb 2005, 20:18
stpimi Hintergrundfarbe in Datensatz
Keine neuen Beiträge Access Tabellen & Abfragen: Suche in Listenfeld 4 Access-Anfänger 673 04. Nov 2004, 11:35
Hilde Suche in Listenfeld
Keine neuen Beiträge Access Tabellen & Abfragen: Datensatz löschen und die anderen neu durchnummerieren 16 brauchehilfe@office 5626 20. Okt 2004, 15:34
Willi Wipp Datensatz löschen und die anderen neu durchnummerieren
Keine neuen Beiträge Access Tabellen & Abfragen: Aktionsabfrage in Formular -immer nur einen Datensatz ändern 6 blauvogel 1092 08. Okt 2004, 11:43
Skogafoss Aktionsabfrage in Formular -immer nur einen Datensatz ändern
Keine neuen Beiträge Access Tabellen & Abfragen: Datensatz nach Datum suchen?? 1 Hansen 1390 04. Okt 2004, 12:16
stpimi Datensatz nach Datum suchen??
Keine neuen Beiträge Access Tabellen & Abfragen: Mehrfachauswahl aus Listenfeld kombiniert mit SQL IN (...) 2 SMArmageddon 2417 01. Sep 2004, 15:07
SMArmageddon Mehrfachauswahl aus Listenfeld kombiniert mit SQL IN (...)
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Project