Avatar billede per2edb Praktikant
12. oktober 2014 - 11:40 Der er 5 kommentarer og
1 løsning

Form of Feld exist

Jeg starter i VBA en Underform Ordre:
Me.Parent![Ordre_Dataark_UFrm].Requery

Inden da vil jeg teste om den eksisterer.
Kan det være regtigt det kun kan gøres med en "kludeprogramering"
som On Error og så hoppe over underformen

Findes der virkeligt ikke en mere prof. måde
Det samme gælder et feld
Avatar billede terry Ekspert
12. oktober 2014 - 12:08 #1
Inden da vil jeg teste om den eksisterer.

what exists and when do you want to do this? Before opening the main form or before requerying the sub form????


Kan det være regtigt det kun kan gøres med en "kludeprogramering"


Well there are many things which can be done in Access with kludeprogramering, but once you start making mnroe advances systems there is no way you can avoid kludeprogramering.

How do you open your forms? kludeprogramering måske?
Avatar billede terry Ekspert
12. oktober 2014 - 12:09 #2
Well there are many things which can be done in Access WITHOUT kludeprogramering
Avatar billede per2edb Praktikant
12. oktober 2014 - 12:16 #3
Det skal være:  before requerying the sub form

Jeg opfatter "On Error" som kludeprogramering men er det eneste løsning så OK
Avatar billede terry Ekspert
12. oktober 2014 - 12:44 #4
Are you saying you get an error when you requery the sub form if no records exist?
I don't think that should happen, its NOT an error that no records exist!

Using error trapping is GOOD PRACTICE, its not at all kludeprogramering. i
Avatar billede terry Ekspert
12. oktober 2014 - 12:44 #5
NOT using error trapping is kludeprogramering  :-)
Avatar billede bvirk Guru
12. oktober 2014 - 13:06 #6
Denne kan smides i et standard modul - og dermed tilgås fra alle form events
Function controlExists%(formobj, controlname)
    Dim c
    For Each c In formobj.Controls
        If c.name = controlname Then
            controlExists = True
            Exit Function
        End If
    Next
End Function

Lidt leg udover din case:
Prøv at sætte et breakpoint i en underformalar start event - man behøver ingen kodelinier for at breake i en event - denne kan f.eks gøre det:

Private Sub Form_Open(Cancel As Integer)
    '
:
End Sub

hvor det er muligt at breake på colonet.

Tilføj expression 'me' til en watch og kigge igennem formobjektet indhold - aktuelt parent->controls->itemX->name

I imediatevinduet, prøv:
  ?controlExists(parent,"Ordre_Dataark_UFrm") 
eller
  ?controlExists(parent,"dyt")
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
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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