|
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:
- kopier cellinnholdet (Rediger -> Kopier)
- 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:
|
|
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:
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 kontrollverktøykassen:
Vis -> Verktøylinjer -> Kontrollverkøykassen
|
Sats på kommandoknapp-knappen...
|
...og lag en pen knapp i regnearket ditt:
|
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.
|
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.
|
|
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:
|
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:
Du finner denne knappen både i Visual Basic verktøylinjen og i
kontrollverktø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.
|