Avatar billede t_grandjean Nybegynder
01. oktober 2007 - 13:15 Der er 14 kommentarer og
1 løsning

trække titel fra knap ind i VBA kode

Jeg her en knap i et regneark, som aktiverer en makro. Jeg vil gerne benytte mig af denne knaps titel i min kode. Hvordan får jeg overført titlen til min kode?

//grandjean
Avatar billede jlemming Nybegynder
01. oktober 2007 - 13:40 #1
det er bare .name
denne kode viser navnet

MsgBox ("navn " & CommandButtonClear.Name)
Avatar billede jlemming Nybegynder
01. oktober 2007 - 13:42 #2
Commandbuttonclear er min knaps titel, din titel er det navn der står øverst i koden før _
Avatar billede t_grandjean Nybegynder
01. oktober 2007 - 13:50 #3
Jeg får stadig en fejl. Jeg tror ikke helt jeg har formuleret mig klart. Jeg skal bruge navnet på knappen i en IF sætning. Sætningen ser således ud so far:

Dim sArea As String
    If CommandButtonClear.Name = "gem mandag" Then
        sArea = "B1:AC30"
    elseif ......

//grandjean
Avatar billede jlemming Nybegynder
01. oktober 2007 - 14:01 #4
Det er fordi du har brugt min titel, du skal finde din egen titel

højre klik på din knap, egenskaber,titelen står ud for name, og som fed i øverste linie
Avatar billede supertekst Ekspert
01. oktober 2007 - 14:03 #5
Måske:
If lcase(CommandButtonClear.Caption) = "gem mandag" Then
Avatar billede t_grandjean Nybegynder
01. oktober 2007 - 14:11 #6
Jeg har flere forskellige knapper, som kalder den samme makro. Alt efte hvilken dag (hvilket også er titlen på de forskellige knapper) det er, skal makroen printe forskellige områder.

desuden, så kan jeg ikke vælge "egenskaber" når jeg højreklikker på knappen? Jeg kan kun vælge "formater kontroldelement"

//grandjean
Avatar billede jlemming Nybegynder
01. oktober 2007 - 14:21 #7
når du højeklikker skal du være i design mode, men det er også lige meget for du kan ikke bruge knap navnet til at se hvilke knap der er trykket på, knappen hedder jo altid det samme !!

Du kan evt. definer en variabel du henter med over i makroen, men der skal du have fat en anden person. beklager :-)

Du kan ikke marker det ønsket område før du kalder makroen?.
så høre koden også mere til det "rigtige sted"
Avatar billede t_grandjean Nybegynder
01. oktober 2007 - 14:28 #8
jeg tror desværre jeg ender med at lave en metode for hver knap, som så hver især definerer det pågældende område og kalder metoden, som klipper området ud.

//grandjean
Avatar billede jlemming Nybegynder
01. oktober 2007 - 14:32 #9
ellers skal de indtastes noget i starten, som definer hvad der skal ske
Avatar billede supertekst Ekspert
01. oktober 2007 - 14:41 #10
Måske kan dette eks. hjælpe - hver knap får tildelt sin makro:
Sub knap1_click()
    udskriv 1
End Sub
Sub knap2_click()
    udskriv 2
End Sub
Private Sub udskriv(knap)
    Select Case knap
        Case 1
            sArea = "B1:AC30"
        Case 2
            sArea = "B2:AC30"
Rem o.s.v.
    End Select

Rem udfør udskrivning herefter
End Sub
Avatar billede jlemming Nybegynder
02. oktober 2007 - 21:17 #11
t_grandjean

Fik du supertekst løsning til at virke, som er den rigtige?
Avatar billede t_grandjean Nybegynder
05. oktober 2007 - 13:17 #12
jeg endte med, som også skrevet tidligere, at lave en metode til hver knap, hvor jeg definerer det område.

//grandjean
Avatar billede jlemming Nybegynder
05. oktober 2007 - 17:36 #13
fint nok, husk at lukke spg.
Avatar billede jlemming Nybegynder
11. oktober 2007 - 20:34 #14
husk at lukke spg. ved at du selv lægger et svar og accepter det.
Avatar billede t_grandjean Nybegynder
12. oktober 2007 - 08:18 #15
undskyld den sene lukning, og tak for reminderen jlemming.

//grandjean
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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