Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Ausgewählte Datensätze aus einer abfrage in einem Formular
Gehe zu Seite 1, 2, 3, 4, 5, 6  Weiter
zurück: Access2007: Kombinationsfeld zeigt nur 10000 Datensätze an weiter: DomSumme Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
joekater
Im Profil kannst Du frei den Rang ändern


Verfasst am:
12. März 2010, 17:11
Rufname:
Wohnort: Germany

Ausgewählte Datensätze aus einer abfrage in einem Formular - Ausgewählte Datensätze aus einer abfrage in einem Formular

Nach oben
       Version: Office 2003

Hallo,
ich habe ein kleines Problem!!
Ich habe 3 Tabellen (Country, Company und Management), die miteinander verknüpft sind, deren Datensätze auch in verschiedenen Formularen je Abfrage angezeigt werden.
Ich will jetzt folgendes erreichen:
Der user soll die möglichkeit in einem formular haben, bestimmte datensätze anzukreuzen und dann anzeigen lassen.
Beispiel:
In der Tablle country sind folgende Spalten: country, abbreviation, company.
In der Tabelle Company: company, service hours, Trained colour engineers.
In der Tabelle Management: country, position, title, Name, Mail.
Ich will jetzt in einem Formular alle Spalten haben und der Anwender darf auswählen, welche angezeigt werden sollen.
z.B.: Der anwender will nur country, company und position haben.
PS: Wie gesagt, alle Tabellen sind miteinander verknüpft
Ich wäre sehr dankbar wenn ich schnellstmöglich antworten lesen kann Smile
Danke im vorraus
Joe
rahan
Word 2007 Liebhaber


Verfasst am:
12. März 2010, 17:41
Rufname:


AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Setze doch Häckchen.
Wenn man diese drückt, dann setze die Me.Textfelder.Visible = True ' oder False

_________________
(\__/)
(O.o )
(> < )
This is Bunny. Copy Bunny into your signature to help him on his way to world domination.
joekater
Im Profil kannst Du frei den Rang ändern


Verfasst am:
13. März 2010, 11:27
Rufname:
Wohnort: Germany

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Hallo,
Das Problem, dass ich nicht weiss, wie ich meine Häckchen mit meinen Spalten verknüpfen kann!!!
Willi Wipp
Moderator


Verfasst am:
13. März 2010, 11:31
Rufname:
Wohnort: Raum Wiesbaden

Re: Ausgewählte Datensätze aus einer abfrage in einem Formul - Re: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Hi joekater,

wenn es nur temporaer sein soll, dann sollte das einfach im Formular machbar sein.
Wenn Du es "fuer immer" haben willst, dann kannst Du es Dir z.B. in einer weiteren Tabelle tblFelderAnzeigen
mit den Feldern IdFeldEnzeigen (Autowert), TxFeld (Text), JnSichtbar (JaNein), ZlBenutzer (Zahl) sichern und wieder aufrufen.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

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


Verfasst am:
15. März 2010, 17:55
Rufname:
Wohnort: Germany


AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Hallo Willi Wipp,
das ist eine super Idee aber werden nicht alle Datensätze gespeichert ?Ich meine, nur der erste user bekommt, was er will aber der zweite bekommt was er wil + das, was der erste wollte...etc
Damit ich das ganze vereinfache, hab ich ein einfaches beispiel:
Ich habe eine DB mit 2 Tabellen Kunden und Auftrag. Die beiden Tabellen haben die folgenden Spalten :
Kunden :
KundenNr
Nachname
Vorname
Strasse
PLZ
Ort
Auftrag :
AuftragNr
KundenNr
Produkt
Menge
Datum
Die KundenNr ist ein Fremdschlüssel in der Tabelle Auftrag.
Ich will ein Formular nur mit den Spaltennamen (ohne Datensätze), ich soll die Möglichkeit haben, die Spalten auszuwählen (z.B. Häckchen) und in dem nächsten Formular anzeigen lassen.
Also :
Arrow KundenNr
Arrow Nachname
Vorname
Strasse
PLZ
Ort
Arrow AuftragNr
KundenNr
Produkt
Arrow Menge
Datum
Ich wähle KundenNr, Nachname, AuftragNr und Menge aus und ich bekomme alle Datensätze, die in den ausgewählten Spalten drin sind.
Ich hoffe, dass ich mich gut ausgedrückt habe Smile
Gruß
Joe
Nachtrag: joekater am 17. März 2010 um 15:24 hat folgendes geschrieben:
Kann mir jemand noch HELFEN ??! Idea
MissPh!
Office-VBA-Programmiererin


Verfasst am:
17. März 2010, 17:20
Rufname:
Wohnort: NRW

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Hallo.

Beantworte doch bitte erstmal die Frage, ob die Auswahl permanent sein soll oder jedesmal neu statfindet.

Und dann stellt sich die Frage, wie du dir das Ergebnis vorstellst. In welcher Ansicht wird das Formular angezeigt, wie willst du die nicht gewollten Spalten verbergen?

_________________
Gruß MissPh!
joekater
Im Profil kannst Du frei den Rang ändern


Verfasst am:
17. März 2010, 17:49
Rufname:
Wohnort: Germany

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Hallo,
ich will, dass jedes mal, je nach Gebrauch, die Spalten ausgewählt werden.
Die Datensätze sollen ganz normal (tabelarisch z.B) angezeigt werden.
Danke
MissPh!
Office-VBA-Programmiererin


Verfasst am:
17. März 2010, 17:59
Rufname:
Wohnort: NRW

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Wenn die Ausgabe in Datenblattform erfolgt, ist die Lösung recht einfach.

Mein Vorschlag wäre, ein Listenfeld mit Mehrfachauswahl für die Auswahl der Datenfelder einzusetzen, das kannst du in einer Verarbeitungsschleife auslesen und daraus einen dynamischen SQL-String als Abfrage für das aufzurufende Formular erstellen. Es geht aber auch genauso gut mit Checkboxen.

Den SQL-Code kannst du beim Aufruf der OpenForm-Methode als OpenArgs-Parameter übergeben und beim Öffnen der RecordSource zuweisen. Anschließend blendest du die fehlenden Spalten mit folgendem Code aus:
Code:
Private Sub Form_Open(Cancel As Integer)
 On Error Resume Next
    Dim ctl As Control, X As Variant

    Me.RecordSource = Me.OpenArgs
    For Each ctl In Me.Controls
        If ctl.ControlType = acTextBox Then
            X = ctl.Value
            ctl.ColumnHidden = Err.Number <> 0
            If ctl.ColumnHidden Then ctl.ColumnWidth = 0.00001
            Err.Clear
        End If
    Next ctl
End Sub

_________________
Gruß MissPh!
joekater
Im Profil kannst Du frei den Rang ändern


Verfasst am:
17. März 2010, 18:24
Rufname:
Wohnort: Germany

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Hallo MissPh,
es hört sich ganz toll an, was du geschrieben hast aber es war für mich wie chinesisch Embarassed
Mit SQL kenn ich mich sehr gut aus, mit VB leider nicht so gut!
Also nochmal für ganz dumme Leute... Razz
Muss ich in die Tabellen, worauf sich die abfrage bezieht, noch ein Feld mit JA/NEIN einfügen ?
Muss mein SQL-Code wo anders sein oder reicht, dass mein Formular die daten aus der Abfrage holt ?
Wo muss der Code, den du geschrieben hast, genau hin ?
Ich weiss, das sind villeicht Anfängerfragen, aber ich bin ja einer Embarassed
Danke und Gruß
Joe
MissPh!
Office-VBA-Programmiererin


Verfasst am:
17. März 2010, 18:48
Rufname:
Wohnort: NRW

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Ja, habe ich mir schon gedacht, dass du damit noch nicht klar kommst, ich wollte dir nur schon mal meine Idee vorstellen. Wink

Nein, eine Häkchen-Spalte in den Tabellen wird nicht benötigt.

Ein Listenfeld mit Mehrfachauswahl hätte den Vorteil, dass man die Datenherkunft per VBA einstellen könnte, sofern man alle Datenfelder der beiden Tabellen anbieten möchte. Somit braucht es keine Formularänderung, wenn der Datenfeldkatalog sich ändert.
Die Checkboxen dagegen könnte man für "schöner" halten... Wink

Hier mal der Code für das Listenfeld:
Code:
Private Sub Form_Open(Cancel As Integer)
    Dim db As DAO.Database, tdf As DAO.TableDef, fld As DAO.Field
    Dim strListe As String

    Set db = CurrentDB
    Set tdf = db.TableDefs("Kunden")
    For Each fld In tdf.Fields
        strListe = strListe & "Kunden" & ";" & fld.Name & ";"
    Next fld
    Set tdf = db.TableDefs("Auftrag")
    For Each fld In tdf.Fields
        strListe = strListe & "Auftrag" & ";" & fld.Name & ";"
    Next fld
    Set tdf = Nothing
    Set db = Nothing
    Me!listenfeld.RowSource = strListe
End Sub
Die Einstellung des RowSourceTyps steht auf Werteliste, Mehrfachmarkierung = Ja, Spalten=2.
Die erste Spalte kann mit Spaltenbreite 0 versteckt werden.

Nach Auswahl der Felder wird diese per Button an die Abfrage übergeben:
Code:
Private Sub btnSelect_Click()
    Dim strSQL As String, itm As Variant

    If Me!Listenfeld.ItemsSelected.Count > 0 Then
        strSQL = "SELECT "
        For Each itm In Me!Listenfeld.ItemsSelected
            strSQL = strSQL & Me!Listenfeld.ItemData(itm, 0) & "." _
                            & Me!Listenfeld.ItemData(i, 1)
        Next itm
        strSQL = strSQL _
                & " FROM Kunden" _
                     & " INNER JOIN Auftrag" _
                     & " ON Kunden.KundenNr = Auftrag.KundenNr"
        CurrentDb.QueryDefs("qryKundenAufträge").SQL = strSQL
        DoCmd.OpenForm "frmKundenAufträge"
      Else
        MsgBox "Bitte wählen Sie die Datenfelder aus!"
    End If
End Sub
Die Sache mit den OpenArgs hat sich damit erledigt, die Datenherkunft des Formulars wird fest auf die Abfrage eingestellt, der Code wird zur Laufzeit erzeugt und zugewiesen.

Viel Spaß damit!

_________________
Gruß MissPh!
joekater
Im Profil kannst Du frei den Rang ändern


Verfasst am:
17. März 2010, 19:07
Rufname:
Wohnort: Germany

Re: AW: Ausgewählte Datensätze aus einer abfrage in einem Fo - Re: AW: Ausgewählte Datensätze aus einer abfrage in einem Fo

Nach oben
       Version: Office 2003

Wenn ich beim Ereignis der Feldliste bin, dann habe ich viele Möglichkeiten : AfterUpdate, Click, BeforeUpdate...
Wo soll das hin ?!
MissPh!
Office-VBA-Programmiererin


Verfasst am:
17. März 2010, 19:42
Rufname:
Wohnort: NRW

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Ein Listenfeld-Ereignis wird hier nicht genutzt. Das Füllen des Listenfeldes erfolgt im Form_Open, das Öffnen des Anzeigeformulars auf Button-Klick.
_________________
Gruß MissPh!
Gast



Verfasst am:
22. März 2010, 13:11
Rufname:

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

So...Ich habe jetzt alles so gemacht, wie du meintest, ich kriege aber keine Felder in meiner Lsite angezeigt aber auch keine Fehlermeldung.So sieht das ganze aus:
Code:
Private Sub Befehl4_Click()
    Dim strSQL As String, itm As Variant

    If Me!Listenfeld.ItemsSelected.Count > 0 Then
        strSQL = "SELECT "
        For Each itm In Me!Listenfeld.ItemsSelected
            strSQL = strSQL & Me!Listenfeld.ItemData(itm, 0) & "." _
                            & Me!Listenfeld.ItemData(i, 1)
        Next itm
        strSQL = strSQL _
                & " FROM Kunden" _
                     & " INNER JOIN Auftrag" _
                     & " ON Kunden.KundenNr = Auftrag.KundenNr"
        CurrentDb.QueryDefs("qryKundenAufträge").SQL = strSQL
        DoCmd.OpenForm "frmKundenAufträge"
      Else
        MsgBox "Bitte wählen Sie die Datenfelder aus!"
    End If
End Sub

Private Sub Form_Open(Cancel As Integer)
    Dim db As DAO.Database, tdf As DAO.TableDef, fld As DAO.Field
    Dim strListe As String
   
    Set db = CurrentDb
    Set tdf = db.TableDefs("Kunden")
    For Each fld In tdf.Fields
        strListe = strListe & "Kunden" & ";" & fld.Name & ";"
    Next fld
    Set tdf = db.TableDefs("Auftrag")
    For Each fld In tdf.Fields
        strListe = strListe & "Auftrag" & ";" & fld.Name & ";"
    Next fld
    Set tdf = Nothing
    Set db = Nothing
    Me!Listenfeld.RowSource = strListe
End Sub
Und so sieht meine Liste nach dem Öffnen des Formulars aus : (siehe Anhang)
Siehst du da einen Fehler oder so ?
LG
MissPh!
Office-VBA-Programmiererin


Verfasst am:
22. März 2010, 14:33
Rufname:
Wohnort: NRW

AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Versuche es mal mit dem Load-Ereignis...

...und schau, ob die Ereignisse überhaupt aktiviert sind (Ereigniseigenschaft=[Ereignisprozedur]).

_________________
Gruß MissPh!
joekater
Im Profil kannst Du frei den Rang ändern


Verfasst am:
22. März 2010, 15:28
Rufname:
Wohnort: Germany


AW: Ausgewählte Datensätze aus einer abfrage in einem Formul - AW: Ausgewählte Datensätze aus einer abfrage in einem Formul

Nach oben
       Version: Office 2003

Das klappt trotzdem nicht, wenn ich nichts mache und auf meinem button drücke dann kriege die Meldung "Bitte Wählen Sie die Datenfelder aus", das heisst, dass der Code ausgeführt wird aber dass die Lsite einfach nicht aufgefühlt wird...
Die Ereignisprozedur ist jetzt beim Laden aber ich glaube nicht das es daran liegt!!



eiun2.jpg
 Beschreibung:
 Dateigröße:  13.83 KB
 Angeschaut:  1072 mal

eiun2.jpg


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

Gehe zu Seite 1, 2, 3, 4, 5, 6  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 6
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: Abfrage mit Auswahlkriterium über 2 Tabellen 1 Majo 1907 24. Feb 2004, 13:54
Willi Wipp Abfrage mit Auswahlkriterium über 2 Tabellen
Keine neuen Beiträge Access Tabellen & Abfragen: Doppelte Datensätze MySQL 8 computerbabalulu 1696 12. Feb 2004, 17:11
Willi Wipp Doppelte Datensätze MySQL
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage aus Formular erstellen 2 frkrone 3248 12. Feb 2004, 14:22
frkrone Abfrage aus Formular erstellen
Keine neuen Beiträge Access Tabellen & Abfragen: Daten anfügen doppelte Datensätze überschreiben 1 Uli 3838 04. Feb 2004, 14:21
Gerd_ Daten anfügen doppelte Datensätze überschreiben
Keine neuen Beiträge Access Tabellen & Abfragen: Suche Hilfe zu SQL (DAO 351 MS) - Abfrage 3 Berny_H 1005 04. Feb 2004, 11:41
borstel Suche Hilfe zu SQL (DAO 351 MS) - Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage, die sich auf 2 Abfragen + 1 Tabelle bezieht 1 caro456 1832 27. Jan 2004, 20:03
Willi Wipp Abfrage, die sich auf 2 Abfragen + 1 Tabelle bezieht
Keine neuen Beiträge Access Tabellen & Abfragen: Bestimmte Abfrage erstellen ... nur wie ? 1 studi 2219 22. Dez 2003, 20:51
reke Bestimmte Abfrage erstellen ... nur wie ?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage, ob eine Abfrage ein Ergebnis hat 3 Esdo 3934 09. Dez 2003, 15:53
Fedaykin Abfrage, ob eine Abfrage ein Ergebnis hat
Keine neuen Beiträge Access Tabellen & Abfragen: Access 97 Abfrage Duplikate 9 gast 2419 02. Dez 2003, 14:39
Kay Access 97 Abfrage Duplikate
Keine neuen Beiträge Access Tabellen & Abfragen: Parameter abfrage 3 Gast 1903 01. Dez 2003, 16:12
Caladan Parameter abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Formular schließen und öffnen 3 daMike 14586 26. Nov 2003, 20:50
Gast Formular schließen und öffnen
Keine neuen Beiträge Access Tabellen & Abfragen: SQL Abfrage mit VBA 3 daMike 1729 26. Nov 2003, 17:58
daMike SQL Abfrage mit VBA
 

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