Avatar billede swamboo Seniormester
30. december 2003 - 23:31 Der er 14 kommentarer og
2 løsninger

lille problem med for each control

Jeg kan se på debug at c er ="Brochure skab"
Men hvis jeg skriver:

For Each c In test1.Controls
If c = "Brochure skab" Then MsgBox ("ja")
Next
Exit Sub

... så virker det ikke (Får fejl)
Hvad skriver jeg??
Avatar billede bak Forsker
30. december 2003 - 23:36 #1
Er test1 en form ?
Avatar billede swamboo Seniormester
30. december 2003 - 23:40 #2
ja
Avatar billede bak Forsker
30. december 2003 - 23:55 #3
hvilken fejl får du ?
Jeg kan ikke lige fremprovokere den.
hvad er det forøvrigt for nogle controller?
Avatar billede swamboo Seniormester
31. december 2003 - 00:12 #4
Den skriver:
Wrong number of arguments or invalid property assignment

Det er en label jeg forsøger at trække caption ud af.
Avatar billede swamboo Seniormester
31. december 2003 - 00:18 #5
Hvis der er en smartere måde at finde den er det selvfølgelig også velkomment som forslag.
Jeg har en del labels og combobox'e hvor "sted"-label indeholder en vigtig sorterings funktion.
Jeg har derfor brug for en kode der kan finde den før jeg går videre.
Avatar billede jkrons Professor
31. december 2003 - 00:20 #6
Din kode virker upåklageligt hos mig. Hvordan kalder du den?

Prøv evt med

If c.Caption = ....
Avatar billede bak Forsker
31. december 2003 - 00:24 #7
eller sådan med check om det er en label.

For Each c In Test1.Controls
    If TypeName(c) = "Label" Then
        If c.Caption = "Brochure skab" Then MsgBox ("ja")
    End If
Next
Avatar billede swamboo Seniormester
31. december 2003 - 00:25 #8
det giver det samme - jeg kalder den via en gem_click
Avatar billede swamboo Seniormester
31. december 2003 - 00:27 #9
Bak - det virker - underligt - jeg syntes jeg har forsøgt den mulighed, men hva... 
Et svar søges...  ;-)
Avatar billede jkrons Professor
31. december 2003 - 00:27 #10
Det virker fortsat upåklageligt her. Har du prøvet Dim'e c som Control?
Avatar billede kabbak Professor
31. december 2003 - 00:38 #11
For Each c In Test1.Controls
    If TypeName(c) = "Label" Then
    if C.name = "sted" then ' er det ikke navnet på din label
        If c.Caption = "Brochure skab" Then MsgBox ("ja")
        end if
    End If
Next
Avatar billede bak Forsker
31. december 2003 - 00:40 #12
du får da lige et svar, men som jkrons skriver virker den første model også upåklagelig her. Jeg kan dog godt få samme fejl som dig hvis jeg bruger c.caption på noget der ikke har en Caption fx hvis der er comboboxe med i spillet.

For Each c In test1.Controls
If c.Caption = "Brochure skab" Then MsgBox ("ja")
Next
Avatar billede bak Forsker
31. december 2003 - 00:40 #13
og så lige svaret
Avatar billede jkrons Professor
31. december 2003 - 00:57 #14
bak-> Jeg får en fejl (dog ikke denne), hvis jeg bruger c.captions på en control, der ikke har denne egenskab, men hvis jeg undlader captions, virker det hele tiden :-)
Avatar billede bak Forsker
31. december 2003 - 01:03 #15
ja, det var også det jeg mente, men ikke kunne skrive så klart som dig :-)
Avatar billede swamboo Seniormester
31. december 2003 - 11:16 #16
NÅÅÅ nu er jeg med. Det var netop ved 3 gennemgang at den fik spadsmer, og det var netop der hvor den mødte en combobox.
Så kan jeg kun sige mange tak for at i lærte mig et vigtigt kapitel i programering af forms...
Hav en rigtig god aften, OG PAS GODT PÅ FINGRE OG ØJNE - jeg får jo nok brug for jer igen...  ;-)
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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