Avatar billede per2edb Guru
17. december 2023 - 14:58 Der er 3 kommentarer

Register om et feld eksisterer på en Subform

Jeg har en form med en subform benyttet son dataark.
I dataarket ligger der felder hvor jeg ønsker at tjekke om de eksisterer.

Jeg kan selvfølgelig tjekke om de eksisterer i tabellen men det ønsker jeg ikke da det ikke er sikkert tabel/form matcher

Denne nedenfor anførte funktion skulle kunne anvendes men melder fejl
For Each ctrl In Forms(strFormName)

Fejlen er at strFormName ikke eksisterer


Public Function FieldExists(strFieldName As String, strFormName As String) As Boolean
    On Error GoTo Err_FieldExists
   
    Dim ctrl As Control
   
    FieldExists = False

        For Each ctrl In Forms(strFormName)

        With ctrl
            If TypeOf ctrl Is TextBox Then
                If StrComp(.Name, strFieldName, vbTextCompare) = 0 Then FieldExists = True
            End If
'            Select Case .ControlType
'                Case acCheckBox, acTextBox, acListBox, acComboBox
'                    If StrComp(.Name, strFieldName, vbTextCompare) = 0 Then FieldExists = True
'            End Select
        End With
    Next

Exit_FieldExists:
    Exit Function

Err_FieldExists:
    MsgBox Err.Description, vbExclamation + vbOKOnly, "FieldExists"
    Resume Exit_FieldExists

End Function


Kan i hjælpe
Avatar billede Gustav Ekspert
18. december 2023 - 09:48 #1
Prøv denne tilføjelse:
For Each ctrl In Forms(strFormName).Controls
Avatar billede per2edb Guru
18. december 2023 - 17:56 #2
Desværre nej - samme fejl - skriver Subformen strFormName ikke findes
Avatar billede Gustav Ekspert
18. december 2023 - 18:18 #3
Nej, Form skal med:
For Each ctrl In Forms(strFormName).Form.Controls

Husk at strFormName skal være navnet på subform-kontrollen, som kan være anderledes end navnet på selve underformularen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester