Arbeide med UserForms i Excel 2016 VBA

Hver Excel-dialogboks som du oppretter i VBA er lagret i sitt eget UserForm-objekt - én dialogboks per UserForm. Du oppretter og får tilgang til disse brukerskjemaene i Visual Basic Editor.

Setter inn et nytt brukerskjema

Sett inn et UserForm-objekt ved å følge disse trinnene:

Aktiver VBE ved å trykke Alt+F11.

Velg arbeidsboken som skal inneholde brukerskjemaet i prosjektvinduet.

Velg Sett inn → Brukerskjema.

VBE setter inn et nytt UserForm-objekt, som inneholder en tom dialogboks.

Her er et brukerskjema - en tom dialogboks. Din jobb, hvis du velger å godta det, er å legge til noen kontroller til dette brukerskjemaet.

Arbeide med UserForms i Excel 2016 VBA

Et nytt UserForm-objekt.

Legge til kontroller i et brukerskjema

Når du aktiverer et brukerskjema, viser VBE verktøykassen i et flytende vindu. Du bruker verktøyene i verktøykassen for å legge til kontroller i brukerskjemaet. Hvis verktøykassen av en eller annen grunn ikke vises når du aktiverer brukerskjemaet, velger du Vis → Verktøykasse.

For å legge til en kontroll klikker du bare på ønsket kontroll i verktøykassen og drar den inn i dialogboksen for å lage kontrollen. Etter at du har lagt til en kontroll, kan du flytte og endre størrelse på den ved å bruke standardteknikker.

Her er en liste over de ulike verktøyene, samt deres evner.

Styre Hva det gjør
Merkelapp Viser tekst
Tekstboks Lar brukeren skrive inn tekst
ComboBox Viser en rullegardinliste
ListBox Viser en liste over elementer
Avmerkingsboks Gir alternativer som av/på eller ja/nei
Alternativknapp Lar brukeren velge ett av flere alternativer; brukes i
grupper på to eller flere
Toggle-knapp Gjør det mulig for brukeren å slå en knapp på eller av
Ramme Inneholder andre kontroller
Kommandoknapp En klikkbar knapp
TabStrip Viser faner
MultiPage En fanebeholder for andre objekter
Rullelinje Gjør det mulig for brukeren å dra en stolpe for å etablere en innstilling
Spin Button Gjør det mulig for brukeren å klikke på en knapp for å endre en verdi
Bilde Holder et bilde
RefEdit Lar brukeren velge et område

Endre egenskaper for en UserForm-kontroll

Hver kontroll du legger til i et UserForm har egenskaper som bestemmer hvordan kontrollen ser ut eller oppfører seg. I tillegg har selve UserForm sitt eget sett med egenskaper. Du kan endre disse egenskapene med det passende navnet Egenskaper-vinduet. Dette viser Egenskaper-vinduet når en Command Button-kontroll er valgt.

Arbeide med UserForms i Excel 2016 VBA

Bruk egenskapsvinduene til å endre egenskapene til UserForm-kontroller.

Egenskaper-vinduet vises når du trykker F4, og egenskapene som vises i dette vinduet avhenger av hva som er valgt. Hvis du velger en annen kontroll, endres egenskapene til de som passer for den kontrollen. For å skjule egenskapsvinduet og få det ut av veien, klikk på Lukk-knappen i tittellinjen. Hvis du trykker på F4, kommer den alltid tilbake når du trenger den.

Egenskaper for kontroller inkluderer følgende:

  • Navn

  • Bredde

  • Høyde

  • Verdi

  • Bildetekst

Hver kontroll har sitt eget sett med egenskaper (selv om mange kontroller har noen felles egenskaper). Følg disse trinnene for å endre en egenskap ved hjelp av vinduet Egenskaper:

Sørg for at riktig kontroll er valgt i brukerskjemaet.

Sørg for at vinduet Egenskaper er synlig.

I Egenskaper-vinduet klikker du på egenskapen du vil endre.

Gjør endringen i høyre del av vinduet Egenskaper.

Hvis du velger selve UserForm (ikke en kontroll på UserForm), kan du bruke Egenskaper-vinduet til å justere UserForm-egenskaper.

Viser vinduet UserForm Code

Hvert UserForm-objekt har en kodemodul som inneholder VBA-koden (hendelsesbehandlingsprosedyrene) som utføres når brukeren arbeider med dialogboksen. For å se kodemodulen, trykk F7. Kodevinduet er tomt til du legger til noen prosedyrer. Trykk Shift+F7 for å gå tilbake til dialogboksen.

Her er en annen måte å bytte mellom kodevinduet og UserForm-visningen: Bruk knappene Vis kode og Vis objekt i prosjektvinduets tittellinje. Eller høyreklikk på brukerskjemaet og velg Vis kode. Hvis du viser kode, dobbeltklikker du på UserForm-navnet i prosjektvinduet for å gå tilbake til UserForm.

Viser et brukerskjema

Du viser et UserForm ved å bruke UserForms Vis-metode i en VBA-prosedyre.

Makroen som viser dialogboksen må være i en VBA-modul – ikke i kodevinduet for brukerskjemaet.

Følgende prosedyre viser dialogboksen med navnet UserForm1:

Sub ShowDialogBox()
  UserForm1.Show
' Andre uttalelser kan gå her
End Sub

Når Excel viser dialogboksen, stopper ShowDialogBox-makroen til brukeren lukker dialogboksen. Deretter utfører VBA eventuelle gjenværende setninger i prosedyren. Mesteparten av tiden vil du ikke ha mer kode i prosedyren. Som du senere ser, legger du hendelsesbehandlingsprosedyrene dine i kodevinduet for brukerskjemaet. Disse prosedyrene starter når brukeren arbeider med kontrollene på brukerskjemaet.

Bruke informasjon fra et brukerskjema

VBE gir et navn for hver kontroll du legger til i et brukerskjema. Kontrollens navn tilsvarer dens Name-egenskap. Bruk dette navnet for å referere til en bestemt kontroll i koden din. Hvis du for eksempel legger til en CheckBox-kontroll i et UserForm kalt UserForm1, heter CheckBox-kontrollen CheckBox1 som standard. Du kan bruke Egenskaper-boksen for å få denne kontrollen til å vises med en hake. Eller du kan skrive kode for å gjøre det:

UserForm1.CheckBox1.Value = True

Som oftest skriver du koden for et UserForm i UserForms kodemodul. Hvis det er tilfelle, kan du utelate UserForm-objektkvalifikatoren og skrive setningen slik:

CheckBox1.Value = True

VBA-koden din kan også sjekke ulike egenskaper til kontrollene og iverksette passende handlinger. Følgende setning kjører en makro kalt PrintReport hvis avmerkingsboksen (kalt CheckBox1) er merket:

Hvis CheckBox1.Value = True Ring deretter PrintReport

Det er vanligvis en god idé å endre standardnavnet VBE har gitt til kontrollene dine til noe mer meningsfylt.


Hvordan blokkere Microsoft Word fra å åpne filer i skrivebeskyttet modus på Windows

Hvordan blokkere Microsoft Word fra å åpne filer i skrivebeskyttet modus på Windows

Hvordan blokkere Microsoft Word fra å åpne filer i skrivebeskyttet modus på Windows Microsoft Word åpner filer i skrivebeskyttet modus, noe som gjør det umulig å redigere dem? Ikke bekymre deg, metodene er nedenfor

Hvordan fikse feil utskrift av Microsoft Word-dokumenter

Hvordan fikse feil utskrift av Microsoft Word-dokumenter

Slik fikser du feil ved utskrift av feil Microsoft Word-dokumenter Feil ved utskrift av Word-dokumenter med endrede fonter, rotete avsnitt, manglende tekst eller tapt innhold er ganske vanlig. Men ikke gjør det

Slett penn- og highlighter-tegninger på PowerPoint-lysbilder

Slett penn- og highlighter-tegninger på PowerPoint-lysbilder

Hvis du har brukt pennen eller merkepennen til å tegne på PowerPoint-lysbildene dine under en presentasjon, kan du lagre tegningene til neste presentasjon eller slette dem, slik at du neste gang du viser dem starter med rene PowerPoint-lysbilder. Følg disse instruksjonene for å slette penn- og merkepenntegninger: Slette linje én på […]

Style Library-innhold i SharePoint 2010

Style Library-innhold i SharePoint 2010

Stilbiblioteket inneholder CSS-filer, Extensible Stylesheet Language-filer (XSL) og bilder som brukes av forhåndsdefinerte mastersider, sideoppsett og kontroller i SharePoint 2010. For å finne CSS-filer i stilbiblioteket til et publiseringsnettsted: Velg Site Actions→ View Alt innhold på nettstedet. Innholdet på nettstedet vises. Style-biblioteket ligger i […]

Formater tall i tusenvis og millioner i Excel-rapporter

Formater tall i tusenvis og millioner i Excel-rapporter

Ikke overveld publikum med gigantiske tall. I Microsoft Excel kan du forbedre lesbarheten til dashbordene og rapportene dine ved å formatere tallene dine slik at de vises i tusenvis eller millioner.

Hvordan dele og følge SharePoint-nettsteder

Hvordan dele og følge SharePoint-nettsteder

Lær hvordan du bruker SharePoints sosiale nettverksverktøy som lar enkeltpersoner og grupper kommunisere, samarbeide, dele og koble til.

Hvordan konvertere datoer til julianske formater i Excel

Hvordan konvertere datoer til julianske formater i Excel

Julianske datoer brukes ofte i produksjonsmiljøer som et tidsstempel og hurtigreferanse for et batchnummer. Denne typen datokoding lar forhandlere, forbrukere og serviceagenter identifisere når et produkt ble laget, og dermed alderen på produktet. Julianske datoer brukes også i programmering, militæret og astronomi. Forskjellig […]

Hvordan lage en Access Web App

Hvordan lage en Access Web App

Du kan lage en nettapp i Access 2016. Så hva er en nettapp egentlig? Vel, nettet betyr at det er online, og appen er bare en forkortelse for "applikasjon". En Custom Web App er en online databaseapplikasjon som du får tilgang til fra skyen ved hjelp av en nettleser. Du bygger og vedlikeholder nettappen i skrivebordsversjonen […]

Hurtigstartlinje i SharePoint 2010

Hurtigstartlinje i SharePoint 2010

De fleste sidene i SharePoint 2010 viser en liste over navigasjonskoblinger på hurtigstartlinjen langs venstre side av siden. Hurtigstartlinjen viser koblinger til innhold på nettstedet som lister, biblioteker, nettsteder og publiseringssider. Hurtigstartlinjen inneholder to svært viktige lenker: Linken for alt nettstedinnhold: […]

Hva betyr løserfeilmeldingene i Excel?

Hva betyr løserfeilmeldingene i Excel?

For enkle problemer finner Solver i Excel vanligvis raskt de optimale Solver-variabelverdiene for objektivfunksjonen. Men i noen tilfeller har Solver problemer med å finne Solver-variabelverdiene som optimerer objektivfunksjonen. I disse tilfellene viser Solver vanligvis en melding eller en feilmelding som beskriver eller diskuterer problemet som […]