Object Egenskaper og metoder i Excel 2016 VBA Programming

Selv om å vite hvordan man skal referere til objekter er viktig, kan du ikke gjøre noe nyttig Excel VBA programmering ved bare å henvise til et objekt. For å oppnå noe meningsfylt, må du gjøre ett av to ting.

  • Les eller endre et objekts egenskaper

    Angi en metoden
    av tiltak for å brukes med et objekt.

    med tusenvis av eiendommer og metoder som er tilgjengelige, kan du lett bli overveldet. Bare husk at du aldri trenger å bruke de fleste av de tilgjengelige egenskapene og metodene.

    Objektegenskaper

    Hver gjenstand har egenskaper. Du kan tenke på egenskaper
    som attributter som beskriver objektet. Egenskapene til et objekt bestemme hvordan den ser ut, hvordan den oppfører seg, og selv om det er synlig. Ved hjelp av VBA, kan du gjøre to ting med egenskapene til et objekt:

    Undersøke gjeldende innstilling for en eiendom

    Endre eiendommens omgivelser
    ..

    For eksempel har en encellet Range objekt en egenskap som kalles verdi. Verdien eiendom lagrer verdien i cellen. Du kan skrive VBA-kode for å vise verdien eiendommen, eller du kan skrive VBA-kode for å sette verdi eiendommen til en bestemt verdi. Følgende makro bruker VBA innebygd MsgBox fungere for å få opp en boks som viser verdien i celle A1 på Ark1 av den aktive arbeidsboken:
    Denne meldingsboksen viser en Range objektets verdi property.Sub ShowValue () Innhold = Regneark ( "Ark1"). Range ( "A1"). Verdi MsgBox ContentsEnd Sub

    Forresten, er MsgBox en svært nyttig funksjon. Du kan bruke den til å vise resultatene mens Excel utfører VBA-kode.

    Koden i det foregående eksemplet viser gjeldende innstilling av en celles Verdi eiendom. Hva hvis du vil endre innstillingen for at eiendom? Følgende makro endrer verdien i celle A1 ved å endre cellens Verdi eiendom..
    Sub ChangeValue () Regneark ( "Ark1") Range ( "A1") Verdi = 994.92End Sub

    Etter Excel utfører denne prosedyren , celle A1 på Ark1 av den aktive arbeidsboken inneholder verdien 994,92. Hvis den aktive arbeidsboken ikke har et ark som heter Ark1, resultatet av utførende at makro er en feilmelding. VBA bare følger instruksjonene, og det kan ikke jobbe med et ark som ikke eksisterer.

    Hvert objekt har sitt eget sett med egenskaper, selv om noen egenskaper er felles for mange objekter. For eksempel, mange (men ikke alle) objekter har en synlig eiendom. De fleste stedene har også et navn eiendom.

    Noen objektegenskapene er skrivebeskyttet egenskaper, noe som betyr at koden kan få eiendommens verdi, men det kan ikke endre det., En samling er også en gjenstand. Dette betyr at en samling har også egenskaper. For eksempel kan du finne ut hvor mange arbeidsbøker er åpne ved å gå til grev eiendommen av arbeidsbøker samlingen. Følgende VBA prosedyre viser en meldingsboks som forteller deg hvor mange arbeidsbøker er åpne: Search Sub CountBooks () MsgBox Workbooks.CountEnd Sub
    Objekt metoder

    I tillegg til egenskaper, gjenstander har metoder. En metoden
    er en handling du utfører med en gjenstand. En metode kan endre egenskapene til et objekt eller gjøre objektet gjøre noe

    Dette enkle eksemplet bruker ClearContents metoden på en Range objekt for å slette innholdet på 12 celler på aktive arket.
    Sub ClearRange () Range ( "A1: A12"). ClearContentsEnd Sub

    Noen metoder ta ett eller flere argumenter. En argument
    er en verdi som ytterligere spesifiserer handling som skal utføres. Du plasserer argumentene for en metode etter metode, atskilt med et mellomrom. Flere argumenter er atskilt med komma.

    Følgende eksempel aktiverer Ark1 (i den aktive arbeidsboken) og deretter kopierer innholdet i celle A1 til celle B1 ved hjelp av Range objektets Kopier metode. I dette eksempelet har kopieringsmetoden ett argument, som er målet utvalg for kopieringen:
    Sub CopyOne () Regneark ( "Ark1") Aktiver Range ( "A1") Copy Range ( "B1").. End Sub

    Legg merke til at regnearket referansen ble utelatt da treet objektene ble referert. Dette kan gjøres trygt fordi en uttalelse for å aktivere Sheet1 ble brukt. (Ved hjelp av Aktiver metoden).

    En annen måte å angi et argument for en metode er å bruke det offisielle navnet på argumentet fulgt av et kolon og et likhetstegn. Ved hjelp av navngitte argumenter er valgfritt, men gjør det kan ofte gjøre koden enklere å forstå. Den andre setningen i CopyOne prosedyren kan være skrevet slik:
    Range ( "A1") Kopier Destinasjon:. = Range ( "B1")

    Legg merke til den lille spørsmål som uttalelsen blir skrevet. Det teksten viser offisielle navnet på argumentet.
    VBE viser en liste over argumenter mens du skriver.

    Fordi en samling er også et objekt, samlinger har metoder. Følgende makro bruker Add metode for arbeidsbøker samlingen:
    Sub AddAWorkbook () Workbooks.AddEnd Sub

    Som du kanskje forventer, skaper denne uttalelsen en ny arbeidsbok. Med andre ord, legges det til en ny arbeidsbok til arbeidsbøker samlingen. Etter at du utfører denne makroen, vil en ny arbeidsbok være den aktive arbeidsboken

    Objekt hendelser

    Det er en mer tema som du trenger å vite om. Hendelser. Objekter svare på ulike hendelser
    som oppstår. For eksempel, når du arbeider i Excel, og du aktivere en annen arbeidsbok, oppstår en arbeidsbok Aktiver hendelse. Du kan for eksempel ha en VBA-makro som er utformet for å utføre når en Activate hendelse inntreffer etter en bestemt arbeidsbok objekt.

    Excel støtter mange arrangementer, men ikke alle objekter kan svare på alle hendelser. Og noen objekter ikke svare på eventuelle hendelser. De eneste hendelsene du kan bruke er de som er gjort tilgjengelig av programmerere for Microsoft Excel.