Hej Thomas
Koden ser jo ud som den bare burde køre.
Men den har ikke den ønskede virkning.
Med Breakpoint kan jeg se at den bliver brugt det rigtige antal gange.
Det har bare ikke effekt - hvilke andre ting kan have indflydelse der ?
Jeg kalder metoden, der sætter tekstfelterne, i Form_Load -
altså kun een gang pr "programstart"
Hvad mon der får det til at hænge ???
Koden til underfornularen ser sådan ud :
Option Compare Database
Sub tildelTekstfelter()
'***********************************************************************************************
' Denne kode er udviklet af Thomas Jepsen, 1999
' Dele eller hele koden må frit benyttes i applikationer, så længe kildeangivelse er bevaret
' Besøg
www.makeiteasy.dk eller skriv til tj@makeiteasy.dk,
' hvis der opstår fejl eller spørgsmål, eller du har brug for yderligere assistance
'***********************************************************************************************
'Denne kode opbygger dynamisk rapporten efter Postkilden
'Dvs at rapporten kan bruges til stort set alle tabeller og forespørgsler - også krydstabullering.
'Du skal blot angive rapportens postkilde samt angive konstanten MaxAntalKolonner her i koden.
'MaxAntalKolonner angiver det maksimale antal kolonner, som der er gjort klar til i rapporten.
'Øvrige kolonner vises ikke
'Hvis der er færre kolonner i postkilden, vises kun de relevante.
'Hvis der ønskes flere kolonner, skal dissse navngives således:
'Tekstbokse (eller kombobokse) navngives "Ctrl15", hvor 15 er det næste tal i rækken
'Etiketter navngves "lbl15", hvor 15 er det næste tal i rækken
'MaxAntalRækker sættes til 15
'On Error Resume Next
Dim db As Database
Dim rs As DAO.Recordset
Dim n As Integer
Dim AntalKolonner As Integer
Const MaxAntalKolonner = 25
Set db = CurrentDb
Set rs = db.OpenRecordset(Me.RecordSource, dbOpenSnapshot)
AntalKolonner = rs.Fields.Count - 1
If AntalKolonner > MaxAntalKolonner Then
AntalKolonner = MaxAntalKolonner
End If
For n = 0 To AntalKolonner
Me("ctrl" & Trim(CStr(n))).ControlSource = rs(n).Name
Me("lbl" & Trim(CStr(n))).Caption = rs(n).Name
Next n
For n = n To MaxAntalKolonner
Me("ctrl" & Trim(CStr(n))).ColumnWidth = 0
Next n
End Sub
'Dette tekstfelt får altid en dato
Private Sub ctrl0_DblClick(Cancel As Integer)
If Not booBookingKalenderDagsoversigtOpen Then
aabn_frm_BookingkalenderDagsoversigt
End If
Forms!frmBookingkalenderDagsoversigt.set_dato (ctrl0.Value)
Forms!frmBookingkalenderDagsoversigt.SetFocus
End Sub