button
Knytt en makro opp mot dine egne knapper
Du kan få dine regneark se ut veldig profesjonelt med noen ganske enkle tricks. De går ut på at du legger til knapper som er knyttet til makroene dine. Da kjører du en makro rett og slett ved å trykke knappen.
Vi skal teste dette med en makro som har det gode egenskapet å kopiere innholdet i en merket celle til cellen som står i neste kolonne.
Først lager vi makroen, så kommer den elegante knappen... Merk en celle, begynn å registrere makroen. Mens du registrer, gjør du følgende operasjoner:
  1. kopier cellinnholdet (Rediger -> Kopier)
  2. Lim den inn i cellen i neste kolonne (merk cellen; Rediger -> Lim inn)
Når du ser på koden som da blir generert, bør du observere noe som dette:
makro
Du ser tydelig hvilke skritt som ble gjort: først ble en cellinhold kopiert. Så ble en ny celle merked. Så ble noe limt inn ("paste").
Dette er imidlertid ikke en særlig fleksibel kode for den kan bare lime inn i cellen B1. Men det vi vil ha er en kode som limer inn i cellen som står ved siden av cellen som er merket i utgangspunktet.
Dette får du til ved å forandre koden litt. Det vi trenger er å fortelle at denne 'Range' linjen er ikke tenkt absolutt, men relativt til cellen som er aktiv i starten. Dette blir som følger:
makro
En liten forandring, men ikke helt opplagt -- derfor kan det være på sin plass med noen kommentarer.
Skriver du noe i en vilkårlig celle og prøver makroen, så burde den kopiere cellinnholdet til neste celle.
Men det er tungvint å kjøre makroen eksplisitt -- det krever en grad av fortrolighet med Excel som de fleste ikke har. Derfor knapper, det er alle fortrolig med. Du må få fram kontrolverktøykassen: Vis -> Verktøylinjer -> Kontrolverkøykassen
GUI tools
Sats på kommandoknapp-knappen...
GUI tools
...og lag en pen knapp i regnearket ditt:
macro with button
Tar du en høyre-klikk på den nye fine knappen din og velger CommandButton_objekt -> Edit, kan du gi et passende etikett til knappen din.
macro with button
Akkurat nå er det litt optimistisk, for det skjer ingenting dersom du trykker på knappen. Dette er fordi Excel enda ikke vet gjøre nå du trykker. Dette fikser du ved å høyre-klikke på knappen og velge Vis kode. Eller simpelthen ved å dobbel-klikke på knappen. Da er du tilbake i makro-editering.
macro with button
Som du skjønner, har Excel automatisk laget en ny prosedyre for deg. Den heter CommandButton1_Click(), og her må stå hva som skal skje dersom noen klikker på din command button 1. Og akkurat nå står ingenting der.
Sett inn en kall til din makro:
macro with button
For å prøve om dette her virker nå, må du ikke være i Utformingsmodus. Dette kan du kontrollere ved hjelp av knappen med utformings-ikon:
macro with button
Du finner denne knappen både i Visual Basic verktøylinjen og i kontrolverktøylinjen.

Vitsen med en knapp som veksler fra en modus til en annen modus er at når du har knaper o.l., må du ha muligheten for å forandre knappens egenskaper ved å klikke på den. Og du må ha muligheten for å utløse makroen som er knyttet opp til knappen, igjen ved å klikke på knappen.

Tilbake til index