Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: phyton2706 am Mai 24, 2012, 13:07:02

Titel: Select-Abfrage auf mehrere Registerkarten
Beitrag von: phyton2706 am Mai 24, 2012, 13:07:02
Hallo Forengemeinde,

ich hätte da mal wieder ein Problem...

In einem Formular habe ich ein Registerkartenelement mit 4 Registerkarten. Auf diesen Registerkarten habe jeweils ein Unterformular eingebunden.

Zusätzlich habe ich einen Button der bei Klick eine Select-Anweisung ausführt:

Private Sub cmd_NameClick()
   If Me.DatumBis >= Me.DatumVon Then
     Me!frmName.RecordSource = "SELECT *" _
       & " FROM tblName" _
       & " WHERE tblName.Datum Between " & Format(Me!DatumVon, "\#yyyy-mm-dd\#") _
       & " AND " & Format(Me!DatumBis, "\#yyyy-mm-dd\#") _
       & " ORDER BY Spalte 1, Spalte 2 "
   Else
     MsgBox "Das Anfangsdatum kann nicht kleiner sein als das Enddatum"
   Exit Sub
   End If
End Sub


Wie muss ich den Code erweitern, dass ich die Sortierung auch auf den anderen Registerkarten durchführen kann?


LG
Frank
Titel: Re: Select-Abfrage auf mehrere Registerkarten
Beitrag von: Beaker s.a. am Mai 24, 2012, 21:24:26
Hallo Frank,
Zitatdass ich die Sortierung auch auf den anderen Registerkarten durchführen kann?
Du meinst, dass die UFos auch auf den Zeitraum eingeschränkt werden?
Das machst Du dann genauso wie beim HFo.
Luftcode:
Me!NameDesUFoControls.Form.RecordSource = "DeinSQL"
Beachte, das Du nicht den Namen des Unterformulars angibst,
sondern den Namen des UFoControls (siehe dazu auch http://www.donkarl.com?FAQ4.2 (http://www.donkarl.com?FAQ4.2)).
Das musst Du dann nacheinander für alle UFos machen.
Oder Du lässt im Entwurf die DS-Herkunft der UFos gleich leer, und
befüllst sie beim Wechsel der Registerkarten; - Prinzip:
Private Sub RegisterControl_Change()
    Select Case Me!RegisterControl.Value
        Case Me!RegisterControl.Pages("NameVonSeite1").PageIndex
            Me!NameDesUFoControls.Form.RecordSource = "DeinSQL"
       Case Me!RegisterControl.Pages("NameVonSeite2").PageIndex
        .
        .
    End Select

Hinweis: Durch das Ansprechen der Seiten per .PageIndex kannst
Du die später beliebig verschieben ohne den Code ändern zu müssen;
- das musst nur wenn Du die Seiten umbenennst.
hth
gruss ekkehard
Titel: Re: Select-Abfrage auf mehrere Registerkarten
Beitrag von: phyton2706 am Mai 25, 2012, 09:44:47
Hallo Ekkehard,

vielen Dank für Deine ausführliche Antwort.

Eigentlich hatte ich den Code wie in Deinem ersten Vorschlag erweitert, nur hat das so nicht funktioniert...
Aber das könne daran gelegen haben, dass bei den UFO`s der Name (UFoControl??) und der Steuerelementeinhalt gleich war.

Ich habe den Namen geändert, und so funktioniert es auf jeden Fall!



LG
Frank