webForumDet fria alternativet

Macro Snabbkommando

7 svar · 794 visningar · startad av airwolf

airwolfMedlem sedan okt. 2003132 inlägg
#1

Jag har ett macro som skriver ut en sida och rensar vissa fält, har satt snabbkommando ctrl+p men jag skulle vilja ha enter tangenten som snabbkommando, hur gör man det?

LaspMedlem sedan juli 200012 980 inlägg
#2

Det är nog inte att rekommendera att använda Enter som snabbkommando. Jag skulle inte heller välja Ctrl+p som macro eftersom det används så frekvent.

airwolfMedlem sedan okt. 2003132 inlägg
#3

det är så att de ska skriva i en massa siffror i ett fält och sen ska sidan skrivas ut och tömmas, så ifall de får använda enter kommer det öka effektiviteten

MindreVetandeMedlem sedan okt. 2005371 inlägg
#4

Vilket program handlar det om?
Vad menar du med fält? Är det ett formulärfält i word, ActiveXfält, en cell i Excel, VBA-formulär eller vad?
Du kan ju använda en händelsehanterare som kör makrot så fort användaren lämnar fältet (med t.ex Enter). Du vet ju var användaren är när du vill att makrot skall köras, så det borde vara en baggis att kontrollera.
Då blir det snabbjobbat samtidigt som du inte riskerar att ställa till det för dig. Ser ganska olika ut beroende på vad du menar med fält och hur du lagt upp det hela. Se bara till att användaren får nåot sätt att "smita" så att användaren kan avsluta jobbet snyggt och prydligt. Annars kommer du inte att bli populär.

airwolfMedlem sedan okt. 2003132 inlägg
#5

Det är i excel, kan du göra ett exempel så jag vet vilket event man ska köra?

DannyMedlem sedan juli 200412 913 inlägg
#6

hmm... möjligtvis gå in i Visual Basic och editera makrot. Du ser en rad där med snabbkommandot. Eller så kanske det finns en liten snabbis för det så man slipper gå in i VB. Kommer inte ihåg. Men något av detta fungerar iaf :)

MindreVetandeMedlem sedan okt. 2005371 inlägg
#7

Beror ju på vad det handlar om. Om det är en cell så kan du t.ex:
Högerklicka på fliknamnet (typ Blad1) ->Visa Kod
Skriv in någonting i stil med:

Private Sub Worksheet_Change(ByVal Target As Range)
' Target är adressen till cellen du står i när bladet ändras

If Application.Intersect(Target, Range("B5")) Is Nothing Then
Exit Sub
' Kollar om "Target" =  den cell du är intresserad av (B5 i exemplet). 
' Om det är någon annan cell så lägger den bara av.

Else:
BlaBLa ' (Ditt makronamn)
' Om "Target" =  din cell så körs makrot BlaBla
End If
End Sub
airwolfMedlem sedan okt. 2003132 inlägg
#8

smart ska testa det exemplet

124 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)