Datainmatningsformulär i Microsoft Excel. Microsoft Excel-objekt som låter dig arbeta med information. Grundläggande objekt i Excel och Word-servrar

Formulärkontroller (Combo Box, Checkbox, Counter, etc.) hjälper dig att snabbt ändra data på ett ark inom ett visst intervall, slå på och av alternativ, göra val etc. I princip kan du klara dig utan dem, men de klarar sig uppgifterna på bladet mer visuella och minska sannolikheten för att ange felaktiga uppgifter.

För att infoga kontroller i ett kalkylblad måste du visa fliken Utvecklare.

  • I MS EXCEL 2007 kan detta göras via menyn Kontorsknapp/ Excel-alternativ/ Allmänt/ Visa fliken Utvecklare på menyfliksområdet .
  • I MS EXCEL 2010 kan du göra så här: Öppna fliken Fil; Klicka på knappen alternativ; Klicka på knappen Anpassa ditt flöde; Välj ett lag Anpassa menyfliksområdet och i avsnittet Huvudflikar markera rutan Utvecklare.

Nu kan du infoga en kontroll via menyn: .

Observera att du i den här menyn kan infoga ActiveX-kontroller, som finns under de formulärkontroller som är intressanta för oss. Båda typerna har samma element: knapp, lista, kryssruta, etc. Skillnaden mellan de två är att för att använda ActiveX-kontroller måste du använda VBA, men formulärkontroller kan bindas direkt till en cell på kalkylbladet.

För dem som inte tidigare har arbetat med formulärkontroller rekommenderar vi att du bekantar dig med dem i detalj i följande artiklar:

I den här artikeln ska vi titta på ett mer komplext exempel på användning av kontroller och .

Exempel

Låt oss titta på ett specifikt exempel på att använda flera kontroller samtidigt. Exempelfilen visar, med hjälp av kontroller, hur användaren kan redigera värden i tabellen (intervall F9:K12 ).

Använd en av 3 kontroller Kombinationsruta, lista Och Disken, användaren kan välja tabellkolumn (år) . Det önskade styrelementet väljs med hjälp av gruppen Växlar. Namnet på det valda elementet är markerat i grått (se. A8:B8 i fig. högre). Det valda året är markerat i mörkgrått i tabellen (se. H9:H12 i fig. högre). Visningen av denna markering är justerbar Kryssruta(flaggans bakgrund är röd). Rullningslister kan redigeras Pris Och Kvantitet under det valda året, men bara inom ett visst intervall. Nu - mer i detalj.

Växlar

Låt oss först infoga ett element i arket. Med detta element kommer vi att slå på och av markeringen av den valda årskolumnen i tabellen. Länka ett element till en cell $G$2 . Om kryssrutan är avmarkerad kommer den här cellen att innehålla FALSE (det här värdet motsvarar 0), om det är markerat, sedan TRUE (det här värdet motsvarar 1).

För att konfigurera, välj ett intervall G9:K12 . Eftersom formeln i villkorlig formatering kommer att innehålla kommer vi att se till att efter att ha valt intervallet är den aktiva cellen G9 (dvs intervallet måste väljas med början från det. Tipset är fältet namn, som ligger till vänster om Formellinjer. När intervallet är valt ska det innehålla G 9 ).

  • samtalsverktyg ( Hem/ Stilar/ Villkorlig formatering/ Skapa en regel);
  • Välj Använd formel för att definiera formaterade celler;
  • i fält" Formatera värden för vilka följande formel är sann" stiga på =OCH(KOLUMN(G9)=ÅrOffset+6,2$G$) Formeln kommer att ha värdet TRUE när två villkor är uppfyllda samtidigt:
  • uttrycksvärde ( OffsetYear(varierar från 1 till 5 (dvs. från 2009 till 2013) + 6) kommer att matcha det aktuella kolumnnumret (7, d.v.s. 2009);
  • Kryssruta Villkorlig formatering installerat.
  • välj önskat format, till exempel grå fyllningsfärg;
  • klicka på OK.

Testning

  • se till att kryssrutan är Villkorlig formatering installerad;
  • välj alternativknappen Lista;
  • i kontrollen Lista låt oss välja 2010;
  • låt oss se till att kolumnen 2010 markerad i grått;
  • Rullningslist Låt oss ändra kvantiteten i kolumnen 2010.

Resultatet visas i figuren.

Tyvärr, formulärkontroller Kryssruta, kombinationsruta Och Lista Det finns inget sätt att formatera det visade teckensnittet. Men detta kan göras för ActiveX-kontroller ( Utvecklare/Kontroller/Infoga). Men för att arbeta med dessa element behöver du skriva ett program i VBA.

Friesen Irina Grigorievna – kandidat för pedagogiska vetenskaper, lärare informationsteknik, författare till ett flertal verk inom området informationsteknologi.

Denna lärobok skrevs i enlighet med det statliga programmet för att studera disciplinen för sekundära specialiserade utbildningsinstitutioner i specialitet 230103 " Automatiserade system informationsbehandling och hantering".

Office-programmering

Manualen ger tillräckligt med material att utföra praktiska lektioner i disciplin, såväl som grundläggande teoretiskt material nödvändigt när man studerar en viss fråga. Baserat på det föreslagna materialet kan du bygga olika typer av klasser.

Läroboken syftar till att hjälpa studenter att studera denna disciplin i sin helhet och uppfylla kraven i den statliga standarden för disciplinen.

Avsedd för lärare och studenter vid sekundära specialiserade utbildningsinstitutioner, och kan även användas av studenter vid högre utbildningsinstitutioner som studerar denna disciplin.

I lärobokÖver 60 problem täcks, åtföljda av 130 bilder och detaljerade förklaringar.

Bok:

Avsnitt på denna sida:

Använda intervall- och urvalsobjekt

I Excel är det viktigaste objektet Application-objektet. Applikationsobjektet är huvudobjektet i Excel-objekthierarkin och representerar själva Excel-applikationen. Den har över 120 egenskaper och 40 metoder. Dessa egenskaper och metoder är avsedda att ställas in allmänna parametrar Excel-applikationer. I Excel-hierarkin kommer arbetsboksobjektet omedelbart efter applikationsobjektet och representerar arbetsboksfilen. Arbetsboken lagras i antingen XLS (standard arbetsbok) eller XLA (fullständigt kompilerade program) filer. Arbetsboksegenskaper och metoder låter dig arbeta med filer. Det mest "använda" i praktiken är dock Range-objektet, som bäst speglar möjligheterna att använda VBA i Excel (för egenskaperna för Range-objektet, se Tabell 19, för metoderna, se Tabell 20).

I Excel-hierarkin ett objekt Räckvidd(intervall) kommer omedelbart efter objektet arbetsblad Ett objekt Räckviddär ett av de viktigaste VBA-objekten. Selection-objektet visas på två sätt i VBA - antingen som ett resultat av Select-metoden eller genom att anropa select-egenskapen. Vilken typ av objekt som erhålls beror på typen av det valda objektet. Oftast hör Selection-objektet till Range-klassen och när du arbetar med det kan du använda Range-objektets egenskaper och metoder. Intressant funktion Range- och Selection-objekt är att de inte är medlemmar i någon familj av objekt.

När du arbetar med ett Range-objekt måste du komma ihåg hur Excel refererar till en kalkylbladscell.

Ange grupper av rader och kolumner med hjälp av ett områdesobjekt

Om ett intervall endast anger kolumn- eller radnamn, anger Range-objektet intervallet som består av de angivna kolumnerna eller raderna. Till exempel anger Range("a:c") ett intervall som består av kolumnerna a, b och c, och Range("2:2") anger en andra rad. Ett annat sätt att arbeta med rader och kolumner är metoderna Rows and Columns, som returnerar samlingar av rader och kolumner. Till exempel är kolumn a kolumner(1), och den andra raden är Rows(2).

Relation mellan Range-objektet och Cells-egenskapen

Eftersom en cell är ett specialfall av ett område, som bara består av en enda cell, låter Range-objektet dig också arbeta med det. Objektet Cells är alternativt sätt arbeta med cellen. Till exempel beskrivs cell A2 som ett objekt med intervall (”A2”) eller celler (l, 2). I sin tur låter cellobjektet, kapslat i Range, dig också skriva området i en alternativ form, vilket ibland är praktiskt för arbete, nämligen Range(“A2:NW”) och Range(Cells(1,2), Cells (3,3 )) definierar samma område.

Tabell 19

Egenskaper för intervallobjekt




Metoder för intervallobjekt



Range objektmetoder med Excel-kommandon

Inbyggda Excel-kommandon och -metoder låter dig arbeta effektivt med ett intervall: fyll det med element enligt ett mönster, sortera, filtrera och konsolidera data, bygg en sluttabell och skapa scenarier, lös en olinjär ekvation med en variabel.

Autofyll-metod

Autofyll-metoden fyller automatiskt celler i ett intervall med element i en sekvens. Autofyll-metoden skiljer sig från DataSeries-metoden genom att intervallet där progressionen kommer att placeras är explicit specificerat. Manuellt är den här metoden likvärdig med att placera muspekaren på fyllningshandtaget för det valda intervallet (i vilket värdena som genererar den skapade sekvensen skrivs in) och dra fyllningshandtaget längs intervallet där den skapade sekvensen kommer att placeras .

Syntax:

ett objekt. Autofyll (intervall, typ)

Argument:

Område Det intervall som fyllningen av typen börjar från. Giltiga värden: xlFillDefault, xlFillSeries, xlFillCopy, xlFillFormats, xlFillValues, xlFillDays, xlFillWeekdays, xlFillMonths, xlFillYears, xlLineTrend, xlLine. Standard xlFillDefault

Autofiltreringsmetod

Autofiltermetoden är ett enkelt sätt att fråga och filtrera data i ett kalkylblad. När AutoFilter är aktiverat blir varje fältrubrik i det valda dataintervallet en listruta. Genom att välja en begäran om att visa data i en listruta visas endast de poster som uppfyller de angivna villkoren. Listrutan innehåller följande villkorstyper: Alla, Topp tio, Anpassade, Specifika dataobjekt, Blanks och NonBlanks. Metoden startas manuellt genom att välja kommandot Data, Filter, AutoFilter.

När du använder AutoFilter-metoden är två syntaxer tillåtna.

Syntax 1:

Ett objekt. AutoFilter

I det här fallet väljer eller avbryter metoden AutoFilter kommandot Data, Filter, AutoFilter som tillämpas på intervallet som anges av objektargumentet.

Syntax 2:

Ett objekt. AutoFilter (fält, kriterier1, operator, kriterier2)

I det här fallet kör AutoFilter-metoden kommandot Data, Filter, AutoFilter baserat på de kriterier som anges i argumentet.

Argument:

fält Ett heltal som anger i vilket fält data filtreras

Kriterier 1 Ange två möjliga filtreringsvillkor och kriterier2-fält. Det är tillåtet att använda en strängkonstant, till exempel 101, och relationstecken >,<,>=, <=, =, <>

operatör Giltiga värden: X1And (logisk kombination av det första och andra kriteriet); X1or (logiskt tillägg av det första och andra kriteriet)

Metoden showAllData och egenskaperna FilterMode och AutoFilterMode är användbara när du arbetar med filter.

ShowAllData Method Visar alla filtrerade och ofiltrerade rader i kalkylbladet

FilterMode-egenskap Giltiga värden: True (om kalkylbladet har filtrerat data med dolda rader), False (annars)

Egenskapen AutoFilterMode Giltiga värden: True (om rullgardinslistor med AutoFilter-metoden visas på kalkylbladet), False (annars)

GoalSeek-metoden

GoalSeek-metoden (parameterval) väljer värdet på en parameter (en okänd kvantitet), som är en lösning på en ekvation med en variabel. Det antas att ekvationen reduceras till formen: den högra sidan är en konstant, oberoende av parametern, som endast ingår i den vänstra sidan av ekvationen. GoalSeek-metoden utförs manuellt med kommandot Tools, Goal Seek. GoalSeek-metoden beräknar roten med metoden för successiva approximationer, vars resultat generellt sett beror på den initiala approximationen. Därför, för att hitta roten korrekt, måste man se till att korrekt indikera denna initiala approximation.

Syntax:

Ett objekt. GoalSeek(Goal, ChangingCell)

Argument:

Ett objekt Cellen där formeln skrivs in, som är den högra sidan av ekvationen som löses. I den här formeln spelas rollen för en parameter (okänt värde) av en referens till cellen som anges i ChangingCell-argumentet

Mål Värdet på den vänstra sidan av ekvationen som löses, som inte innehåller en parameter

Noggrannheten med vilken roten hittas och det högsta tillåtna antalet iterationer som används för att hitta roten ställs in av egenskaperna Maxchange och Maxiterations för Application-objektet. Till exempel, bestämning av roten med en noggrannhet på 0,0001 i maximalt 1000 iterationer fastställs av instruktionen:

Med applikation

Maxiterationer = 1000

MaxChange = 0,0001

Dessa värden ställs in manuellt på fliken Beräkning i dialogrutan Alternativ, som kallas upp av kommandot Verktyg, Alternativ.

Sorteringsmetod

Sortering låter dig ordna data i lexikografisk ordning i stigande eller fallande ordning. Sorteringsmetoden sorterar rader med listor och databaser, såväl som kolumner med kalkylblad, med hänsyn till upp till tre kriterier som sorteringen utförs efter. Att sortera data manuellt görs med kommandot Data, Sort.

Syntax:

Ett objekt. Sortera(nyckel1, order1, nyckel2, order2, nyckel3, order3, header, orderCustom, matchCase, orientaticn)

Argument:

Ett objekt Räckvidd som ska sorteras

Beställning 1

order2 Anger beställningsordningen. Giltiga värden: xlStigande (stigande ordning); xlFallande (fallande ordning)

rubrik Giltiga värden: xlYes (den första raden i intervallet innehåller en titel som inte är sorterad); xlNo (den första raden i intervallet innehåller ingen rubrik, detta värde anses vara standard); xlGuess (Excel avgör om det finns en rubrik)

beställa Anpassad Anpassad sorteringsordning. Standard är Normal

liknande fall Giltiga värden: True (skiftlägeskänslig) och False (skiftlägeskänslig)

orientering Giltiga värden: xlTopToBottom (sorteringen görs uppifrån och ned, d.v.s. efter rad); xlLeftToRight (från vänster till höger, d.v.s. efter kolumner)

Till exempel sorteras intervallet A1:C20 för kalkylblad 1 med följande kommando i stigande ordning så att den initiala sorteringen sker i den första kolumnen i detta intervall och den sekundära sorteringen sker i den andra:

Arbetsblad("Sheet").Range("A1: C20").Sortera _

key1:=Worksheets("Sheet1").Range("A1"), _

key2:=Worksheets("Sheet1").Range("B1")

Avrundade siffror

Du behöver ofta avrunda decimaltal, särskilt när du arbetar med penningvärden. VBA erbjuder ingen direkt lösning på dessa problem, men teknikerna som diskuteras nedan kan hjälpa dig att lösa dessa problem.

1 sätt

Rund funktion

X= rund (2,505, 2)

Värdet på x blir 2,5, inte 2,51.

Därför används det ofta inte.

Metod 2

Formateringsfunktion

sngRounding=Format(SngUnrounded, “#, 0.00”)

3 sätt

Funktionen FormatNumber

SngRounding= FormatNumber(sbgUnrounded, 2)

Om du vill ändra decimalerna ändrar du antalet nollor efter decimaltecknet i argumentet Format eller ändrar talet som anger värdet på det andra argumentet till önskat värde.

Notera. Variabeln som det avrundade värdet placeras i måste vara av typen sträng, enkel, dubbel, decimal, valuta eller variant, men inte av typen heltal eller lång.

Datareduktion

För att konvertera indata till önskad typ, inkluderar VBA en omfattande uppsättning funktioner, varav en är CDBL. Syntax:

CDbl(uttryck)

Krävs argument uttryckär vilken sträng eller ett numeriskt uttryck som helst. För att läsa informationen som skrivits in i textfältet i det skapade formuläret, skriv in en variabel och skriv uttrycket:

A = Cdbl(textBoxN.text)

Därefter kan du arbeta med denna variabel.

För att visa värden direkt i Excel-arbetsboksceller är det bekvämt att använda Range-objektet:

range("A5").värde = a

Den omvända funktionen till CDbl är funktionen CStr - den omvandlar tal till strängar och är bekväm för att visa resultatet antingen i en cell på ett ark eller i ett eller annat textfönster.

TextBoxN.text = CStr(.Range("A8").värde)

– läsa ett värde från en cell och visa det i ett textfönster.

Trim(sträng)-funktionen returnerar en kopia av strängen med inledande och efterföljande mellanslag borttagna.

Skapa VBA-program

Använda GoalSeek-metoden

Exempel 41. Utveckla ett program som, med hjälp av de inmatade numeriska värdena för en viss ekvation, löser den givna ekvationen och hittar den okända variabeln x. Beräkningsresultatet visas i ett textfönster på formuläret och på ett Excel-ark.


Ris. 92. Den utvecklade formen av exempel 41 i fungerande skick

Utförandeteknik

1. Starta Excel och spara dokumentet.

2. Gå till VBA-redigeraren.

3. Skapa en form enligt bilden som visas. 92.

4. Placera den önskade texten (designen) på Excel-arket och tillhandahålla lämpliga celler för att visa information (Fig. 93).


Ris. 93. Utmatning av resultat till ett excelark efter att ha kört exempel 41-formuläret

5. Bearbeta knapparna.

Knappen Beräkna

Private Sub CommandButton1_Click()

Dim a, b, c Som dubbel

a = CDbl(TextBox1.Text)

b = CDbl(TextBox2.Text)

c = CDbl(TextBox3.Text)

Med ActiveSheet

Range("b3").Värde = a

Range("b4").Värde = b

Range("b5").Värde = c

Range("b6").FormulaLocal = "=b3*b7^3+b4*sin(b7)"

Range("b6").GoalSeek Goal:=c, changingCell:=Range("b7")

TextBox4.Text = CStr(.Range(“b7”).Value)

TextBox4.Text = FormatNumber(TextBox4.Text, 2)

Stäng-knapp

Private Sub CommandButton2_Click()

Forminitieringsprocedur

Private Sub UserForm_initialize()

Arbetsblad(1).Synlig = Falskt

Använda autofyll-metoder när du fyller tabeller

Exempel 42 . Skapa ett program som, baserat på textdata som anges i de lämpliga textfälten i formuläret, automatiserar inmatningen av data för studenter från en viss specialitet vid en utbildningsinstitution. Resultaten av att fylla i textfälten visas på ett Excel-ark, som låter dig skriva ut data vid behov.

Programmering i Visual Basic bygger på objektorienterad programmering (OOP) och dess tillämpning i Excel. För att kunna använda Visual Basic-programmeringselement i Excel är det nödvändigt att definiera begreppet: objekt, objektegenskaper, metoder, objekt och deras användning i programmet.

OOP är den modernaste stilen inom utveckling av datorprogram. Denna stil används för att modern programdesign försöker uppnå vissa specifika mål. Programmet måste vara: testbart, uppgraderbart, återanvändbart, bärbart.

Alla dessa krav är uppfyllda om principen om programmodularitet används. Under utvecklingen bryts modulära program upp i separata delar som kallas moduler. Varje modul utför specifika, strikt definierade transformationsfunktioner och har endast tillgång till de data som är nödvändiga för en given transformation. Modulkod (modulprogram), utvecklad med ett strikt definierat gränssnitt för andra programmoduler, är lätt att felsöka, underhålla och förstå. En annan aspekt av modularitet är dess stängda natur, vilket säkerställer att alla ändringar i en moduls kod endast påverkar modulens funktionalitet och inget annat.

OOP utnyttjar principen om modularitet maximalt. Ett mjukvaruobjekt i OOP kallas en "container". En behållare innehåller data och kod som vet hur de ska manipuleras.

Ett objekt är en samling data tillsammans med programkod utformad för att bearbeta den.

Med andra ord är ett mjukvaruobjekt (container) ett block som består av kod och data.

Det kan representeras som ett fysiskt objekt, till exempel en knapp eller meny. Ett mjukvaruobjekt har en specifik konverteringsfunktion och innehåller den specifika koden och nödvändiga data för att implementera den funktionen, men dess interna funktion är dold för användaren.

I mer traditionell programmering utvecklas ett datorprogram som funktionella uppsättningar av linjer där datablock skickas från modul till modul och varje modul modifierar eller använder dem som den vill. Moduler innehåller inte data, utan endast kod för att modifiera överförda data. Om ett program av misstag skickar in felaktiga data, kommer proceduren fortfarande att bearbeta det och returnera skräp eller till och med krascha ditt system.

I OOP kombineras data och kod i en enda struktur som kallas ett objekt. Istället för att skicka data från modul till modul för att utföra beräkningar, skickas ett meddelande till objektet som innehåller dessa data. Det är omöjligt att överföra dålig data till ett objekt, eftersom all data finns inuti objektet.

Vanliga exempel på Visual Basic- och Excel-objekt inkluderar tabeller, cellområden, kommandoknappar, textfönster, arbetsmappar, diagram och moduler. Ett mjukvaruobjekt har vissa egenskaper och metoder.

Egenskaper är de synliga egenskaperna hos ett objekt. Ett objekts egenskaper bestämmer dess utseende och beteende.

Metoder - dessa är operationerna för att transformera denna data.

Synliga egenskaper är data som kan nås utanför objektet. Egenskaper är data som ett objekt manipulerar eller som låter dig styra hur objektet ser ut eller hur det beter sig. Till exempel egendom Värde textfönster är texten som skrivs in i fönstret.

När en metod exekveras kan den bara ändra värdena för egenskaperna för detta objekt, men inte andra objekt. En metod kan bara be ett objekt att ändra någon egenskap.

Det är omöjligt att anropa ett objekt, såväl som en procedur. För att ändra en egenskap hos ett objekt eller exekvera en av dess metoder måste ett meddelande skickas till objektet. Till exempel, för att utföra en operation på objektdata, specificera

Objektets namn. Metod,

och att ändra någon egendom

Objektets namn. egendom=värde.

Låt namnet på objektet vara Power, som har egenskapen Value, då är det möjligt att ändra denna egenskap med hjälp av instruktionen:

Kraft. Värde = 3 'Värdeegenskapen - värde - kommer att vara lika med 3

eller lagra värdet av ett objekts egenskap i en variabel

X = Effekt. Värde 'Värdet på värdeegenskapen placeras i variabeln x.

Det finns dussintals och till och med hundratals olika objekt i VBA. Men några av dem kommer att mötas vid nästan varje steg. Några av dem finns i tabellen. 4.1.

Tabell 4.1

VBA Excel-objekt

Objektklass Beskrivning av objektet
Ansökan Detta objekt representerar själva Excel-applikationen och inkluderar i allmänhet alla inbyggda funktioner i MS Excel.
Arbetsbok Bestämmer arbetsbokens tillstånd, till exempel om den är öppen för läsning eller vilken metod som för närvarande är aktiv. ActiveWorkBook-objektet tillhör samma klass - det representerar den för närvarande aktiva arbetsboken.
Arbetsblad Objektet används när du kopierar eller tar bort kalkylblad, döljer eller visar dem och utför beräkningar för kalkylbladsformler. ActiveWorkSheet-objektet tillhör samma klass - detta är ett objekt som representerar det för närvarande aktiva kalkylbladet.
Fönster Ett objekt av den här klassen används när man minimerar eller maximerar ett fönster, delar upp det i delar och fixerar trösklar. ActiveWindow – Representerar det aktiva fönstret
Räckvidd Ett objekt i den här klassen låter dig ändra egenskaperna för ett cellspann, såsom typsnittet som används, kontrollera eller ändra innehållet i celler, klippa ut eller kopiera ett spann, etc. Detta är den mest använda objektklassen. Följande objekt tillhör samma klass: ActiveCell - aktiv cell. En enskild cell är ett specialfall av Range.

Som redan nämnts har varje objekt ett antal inneboende egenskaper eller egenskaper. Några av dem finns i tabellen. 4.2

Tabell 4.2

Egenskaper för vissa VBA-objekt

Ett objekt Fast egendom Beskrivning
Ansökan ActiveWindow ActiveWorkBook ScreenUpdating StandardFont Aktivt fönster Aktiv arbetsbok Standardteckensnittsnamn för nya kalkylblad
Arbetsbok ActiveSheet FullName Namn sparat Aktivt arbetsblad Arbetsbokens fullständiga namn, inklusive sökvägen. Arbetsbokens namn. En indikation på att arbetsbokens tillstånd är sparat på disk (värden False om ändringar har gjorts i arbetsboken)
Arbetsblad Namn Previons ProtectContents Visible Kalkylbladsnamn Föregående kalkylblad Läget för att skydda innehållet i kalkylbladsceller. Arbetsbladssynlighetsläge (dold eller visat).
Fönster ActiveCell DisplayGridlines Selection Visible WindowState Aktiv cell Visningsläge för rutnätslinje Aktuellt valt objekt. Fönstersynlighetsläge. Fönstervisningsläge (minimera fönster, helskärm, normal storlek)
Räckvidd Kolumn Teckensnitt Formel Namn Rad Värde Arbetsblad Första kolumnen i intervallet Teckensnitt som används i intervallet Intervallformel Intervallnamn Första raden i intervallet Cellvärde Arbetsblad

Här är några exempel som visar hur objektegenskaper bestäms (set):

1) ställ in teckenstorleken till 14 pt i den aktiva cellen.

ActiveCell.Font.Size=14

Var Storlek– objektegenskap Font;

2) installera ett teckensnitt som heter Courier New Cyr i den aktiva cellen

ActiveCell.Font.Name = "Courier New Cyr"

Var namn– objektegenskap Font;

3) ställa in teckensnittsstilen i den aktiva cellen till kursiv stil

ActiveCell.Font.Italic=Sant.

Dessutom har varje objekt sina egna metoder (Metod - beskriver den åtgärd som kan utföras på objektet). Vissa objektmetoder presenteras i tabellen. 4.3.

Tabell 4.3

Tabell över några VBA-objektmetoder

Ett objekt Metod Beskrivning
Ansökan Avsluta Ångra Att slutföra MSExsel Avbryter den senaste exekveringen av en åtgärd
Arbetsbok Aktivera Stäng Spara Sparasom Aktiverar arbetsboken. Stänger arbetsboken. Sparar arbetsboken. Sparar arbetsboken under ett annat namn.
Arbetsblad Aktivera Beräkna Ta bort Skydda Ta bort skydd Aktiverar arbetsbladet. Beräknar om kalkylbladets värde. Tar bort ett kalkylblad. Skyddar arbetsbladet. Avbryter kalkylbladsskydd.
Fönster Aktivera Stäng Aktiverar ett fönster. Stänger fönstret.
Räckvidd Rensa ClearContents ClearFormats Offset Välj Rensar helt avståndet med formatering. Rensar innehållet i en cell. Rensar cellformatering. Returnerar ett intervall med angiven offset från det ursprungliga intervallet. Markerar ett intervall

Låt oss överväga att lösa flera problem.

Problem 4.1

Få information om de tillgängliga egenskaperna för en arbetsbok: antalet ark i arbetsboken, namnet på arbetsboken och namnet på det tredje bladet i denna arbetsbok. Resultatet visas i kalkylbladets celler.

Lösning

Sub Info()

"Räknar antalet ark och resultatet placeras i B1

Worksheets("Sheet1").Range("B1").Value =Worksheets.Count

"Definierar namnet på den aktiva arbetsboken och placeras i B2

Arbetsblad("Sheet1").Range("B2").Value=ActiveWorkBook.FullName

"Bestämmer namnet på det tredje arket i arbetsboken och placerar det i B3.

Worksheets("Sheet1").Range("B3").Value = Worksheets(3).Namn

Uppgift 4.1

Skriv en kod med hjälp av objekt och metoder som räknar om antalet ark i den aktuella arbetsboken, lägger till ytterligare ett ark och kallar det sista arket "Hej", visar teckenstorlek och teckensnittsnamn på det nya arket.

Notera

Lägg till metod: Lägg till.

Uppgift 4.2

Skriv kod för att ta bort det sista arket från boken.

Information

Ett av huvudobjekten i Microsoft Excel är arbetsboken och kalkylbladet.

När du skapar, öppnar eller sparar en fil i Microsoft Excel skapar, öppnar och sparar du faktiskt en arbetsbok. För att arbeta med en arbetsbok använder Visual Basic metoder för WorkBook-objektet eller WorkBooks-uppsättningen.

Instruktioner med

With-satsen låter dig köra en sekvens av satser på ett specificerat objekt utan att upprepa objektets namn. Till exempel, om du har flera egenskaper som behöver ändras på ett enda objekt, är det bekvämare att placera egenskapstilldelningssatserna i en With-kontrollstruktur och referera till objektet en gång i stället för att referera till objektet varje gång du tilldelar dess egenskaper .

Med< objekt>

<инструкции>

Sluta med

Var Med, sluta med – nyckelord,

< objekt> – alla Excel-objekt,

<инструкции> – VBA-satser med egenskaper och metoder < objekt>. Varje instruktion måste börja med en punkt.

Följande programfragment ställer in området A1:C8 till fet röd font med en teckenhöjd på 20pt och använder inte instruktionen Med.

Räckvidd(" A1:C8 "). Font.Bold=Sant

Räckvidd(" A1:C8 ").Font.ColorIndex=3

Räckvidd(" A1:C8 ”).Teckensnittsstorlek=20

Följande exempel visar användningen av en With-sats för att tilldela värden till flera egenskaper för ett enda objekt.

Med Range(“A1:C8”). Teckensnitt

.Fet=Sant

.ColorIndex=3

.Storlek=20

Sluta med

Formar som ett objekt

VBA låter dig organisera ett bekvämt och intuitivt användargränssnitt med data med hjälp av formulär.

Blanketter är objekt som har egenskaper som bestämmer deras utseende, metoder som bestämmer deras beteende och händelser som bestämmer hur de interagerar med användaren. Genom att ställa in formulärets egenskaper och utveckla VBA-kod för att få formuläret att svara på händelser skapar du ett objekt som uppfyller kraven för en specifik applikation.

Kontrollerär objekt som finns i formobjekt. Varje kontrolltyp har sin egen uppsättning egenskaper, metoder och händelser som gör den lämplig för ett specifikt ändamål. Vissa kontroller som används i applikationer är bäst lämpade för att mata in eller visa text. Andra kontroller ger åtkomst till andra applikationer och bearbetar data som om fjärrapplikationen vore en del av själva applikationen.

Microsoft Excel (även ibland kallat Microsoft Office Excel) är ett kalkylprogram skapat av Microsoft Corporation för Microsoft Windows, Windows NT och Mac OS. Det ger ekonomisk-statistiska funktioner, grafiska verktyg och, med undantag för Excel 2008 på Mac OS X, makroprogrammeringsspråket VBA (Visual Basic for Applications). Microsoft Excel är en del av Microsoft Office och idag är Excel ett av de mest populära programmen i världen.

En värdefull funktion i Excel är förmågan att skriva kod med Visual Basic for Applications (VBA). Den här koden är skriven med en editor separat från tabellerna. Kalkylarket hanteras med hjälp av en objektorienterad kod och datamodell. Med hjälp av denna kod kommer data från inmatningstabellerna att omedelbart bearbetas och visas i tabeller och diagram (grafer). Tabellen blir gränssnittet för koden, så att du enkelt kan arbeta med den, ändra den och vägleda beräkningar.

Med Excel kan du analysera stora mängder data. I Excel kan du använda mer än 400 matematiska, statistiska, finansiella och andra specialiserade funktioner, länka olika tabeller till varandra, välja godtyckliga datapresentationsformat och skapa hierarkiska strukturer. Verkligen obegränsade metoder för att grafiskt presentera data: förutom flera dussin inbyggda diagramtyper kan du skapa dina egna, som kan anpassas för att visuellt visa objektet för diagrammet. De som bara lär sig att arbeta med Excel kommer att uppskatta hjälpen av "trollkarlar" - hjälpprogram som hjälper när du skapar diagram. De, som bra trollkarlar, ställer ledande frågor om de förväntade nästa stegen och visar, beroende på det planerade svaret, resultatet, kommer att guida användaren "med handen" genom alla stadier av att konstruera diagrammet på kortast möjliga sätt.

Att arbeta med en tabell är inte begränsat till att bara skriva in data i den och rita diagram. Det är svårt att föreställa sig ett område där analys av dessa data inte skulle krävas. Excel innehåller ett kraftfullt analysverktyg - pivottabellen. Med dess hjälp kan du analysera bredformatstabeller som innehåller en stor mängd osystematiserade data, och med bara några få musknappsklick kan du få dem till en bekväm och läsbar form. Att bemästra detta verktyg förenklas genom närvaron av ett lämpligt guideprogram.

Det finns två huvudtyper av objekt i Microsoft Excel: bok och brev.

bok i Microsoft Excel är en fil som används för att bearbeta och lagra data. Varje bok kan bestå av flera ark, så du kan lägga en mängd information i en fil och upprätta de nödvändiga kopplingarna mellan dem.

Brev tjänar till att organisera och analysera data som kan matas in och redigeras samtidigt på flera ark, samt utföra beräkningar baserade på data från flera ark. När de har skapats kan diagram placeras på ett e-postmeddelande med relevant data eller på ett separat e-postmeddelande.

Bladnamn visas på flikarna längst ned i arbetsboksfönstret. För att byta från en bokstav till en annan måste du ange lämplig etikett. Namnet på det aktiva arket är i fetstil.

Microsoft Excel har många olika funktioner, till exempel:

1. Finansiell, bland många specialfunktioner som beräknar ränta på en insättning eller lån, avskrivningsavgifter, avkastningsgrad och en mängd olika omvända och relaterade kvantiteter.

2. Datum och tid funktioner– de flesta funktionerna i denna kategori är ansvariga för att konvertera datum och tid till olika format. Två specialfunktioner TODAY och TDATE infogar det aktuella datumet (det första) och datumet och tiden (det andra) i garderoben, och uppdaterar dem varje gång filen anropas eller när några ändringar görs i tabellen.

5. Länk och arrayer. Denna kategori innehåller funktioner som låter dig komma åt en datamatris (efter kolumn, rad, rektangulärt intervall) och få en mängd information från den: antalet kolumner och rader den innehåller, deras antal, innehållet i matriselementet du behöver ; du kan hitta vilket fack i denna array som innehåller det önskade numret eller texten, etc.

6. Text– Det finns ungefär två dussin lag i den här gruppen. Med deras hjälp kan du räkna antalet tecken i kragen, inklusive mellanslag (DLST), ta reda på symbolkoden (CODE), ta reda på vilket tecken som är först (VÄNSTER) och sist (HÖGER) i en textrad, placera ett visst antal tecken från en annan i de aktiva boxkragarna (PSTR), placera i den aktiva rutan all text från en annan ruta med versaler (ÖVRE VERSALER) eller versaler (LOWER), kontrollera om två textrutor matchar (COICH ), hitta lite text (SÖK, HITTA) och ersätt den med en annan (ERSÄTT ).

7. Kontrollera egenskaper och värden– här finns kommandon med vilka du kan få information om typen av data i kragen (ett nummer finns där, text eller någon annan information), om formatet, om den aktuella driftsmiljön, om typiska fel som har uppstått i formeln , etc. P..

8. Arbeta med databasen– här kan du hitta kommandon för statistisk redovisning (BDDISP - varians för ett urval från databasen, BDDISP - varians för den allmänna befolkningen, DSTANDOTKL - standardavvikelse för urvalet), operationer med kolumner och rader av basen, antalet icke -tomma (BSCOUNT) eller (BSCOUNT) celler, etc. .d.

9. Diagram trollkarl– inbyggt EXCEL-program, som förenklar arbetet med programmets huvudfunktioner.

Syftet med MS Excel.

MS Excel är ett av de mest populära kalkylbladsprogrammen idag. Det används av forskare, revisorer, journalister, etc., med dess hjälp underhåller de olika tabeller, listor och kataloger, förbereder finansiella och statistiska rapporter, beräknar tillståndet för ett handelsföretag, bearbetar resultaten av ett vetenskapligt experiment, för register, och förbereda presentationsmaterial. Excels kapacitet är mycket hög. Textbearbetning, databashantering – programmet är så kraftfullt att det i många fall är överlägset specialiserade redaktörsprogram eller databasprogram. En sådan mängd olika funktioner kan till en början förvirra dig, snarare än att tvinga dig att använda den i praktiken. Men när du får erfarenhet börjar du inse att gränserna för Excels möjligheter är svåra att nå.

Under den långa historien av tabellberäkningar med persondatorer har användarkraven för sådana program förändrats avsevärt. Till en början låg huvudvikten i ett program som VisiCalc på att räkna funktioner. Idag, tillsammans med tekniska och redovisningsberäkningar, blir organisationen och den grafiska representationen av data allt viktigare. Dessutom bör mångfalden av funktioner som erbjuds av ett sådant beräknings- och grafiskt program inte komplicera användarens arbete. Windows-program ger de idealiska förutsättningarna för detta. På senare tid har många precis gått över till att använda Windows som användarmiljö. Som ett resultat började många mjukvaruföretag erbjuda ett stort antal program för Windows.

Excel ger både enkel hantering av data och dess säkerhet. Excel låter dig snabbt slutföra arbete som inte kräver mycket papper och tid, och involverar även inblandning av professionella revisorer och finansiärer.

Det här programmet kommer att kunna beräkna beloppen i rader och kolumner i tabeller, beräkna det aritmetiska medelvärdet, bankräntan eller spridningen; här kan du i allmänhet använda många standardfunktioner: finansiell, matematisk, logisk, statistisk.

Excel har många fler fördelar. Detta är ett mycket flexibelt system som "växer" med användarens behov, ändrar utseende och anpassar sig efter dig. Grunden för Excel är cellfältet och menyn högst upp på skärmen. Dessutom kan upp till 10 verktygsfält med knappar och andra kontroller finnas på skärmen. Det är möjligt att inte bara använda standardverktygsfält, utan också att skapa dina egna.

Slutsats.

För att kunna Excel måste du arbeta i det. Genom att använda det här programmet kommer du säkert att upptäcka fler och fler nya funktioner och egenskaper. Utforska och experimentera. Om du inte gillar resultatet, försök igen. Nästan allt du gör i Excel kan ångras, så du kommer inte att förlora något mer än några minuter av din tid genom att experimentera.


©2015-2019 webbplats
Alla rättigheter tillhör deras upphovsmän. Denna webbplats gör inte anspråk på författarskap, men erbjuder gratis användning.
Sidans skapande datum: 2016-08-08

I de flesta av exemplen i det här inledande avsnittet tittade vi på funktionerna hos VBA utan hänvisning till informationen i arbetsbladet. Endast ett fåtal situationer visade syntaktiska konstruktioner som gjorde att data kunde hämtas och skrivas till celler i Microsoft Excel-ark. I den här delen av avsnittet kommer vi att ta en detaljerad titt på de objekt som låter dig arbeta med information som finns i Microsoft Excel-arbetsböcker. Exemplen som ges här är grunden för mer komplexa utvecklingar som diskuteras i efterföljande artiklar.

En Excel-arbetsboksfil representeras i ett arbetsboksobjekt, som har ett stort antal egenskaper och metoder. Hjälp för dem finns i både VBAs onlinehjälp och . Vi kommer inte att fördjupa oss i ren referensinformation och i den inledande delen tar vi bara hänsyn till den information som vi senare kommer att stöta på i de givna exemplen.

Ja, egendom Arbetsblad Ett arbetsboksobjekt representerar en familj av alla kalkylblad i en arbetsbok. Och för att komma åt ett specifikt kalkylblad med den här egenskapen behöver du helt enkelt ange arknumret som en parameter, som ser ut så här: Arbetsblad (arknummer). Bladnumret är helt enkelt dess serienummer i Microsoft Excel-arbetsboken. Ett annat alternativ är att ange arknamnet som en parameter: Arbetsblad. En av de mest programmerade händelserna i samband med boken som helhet är händelsen Öppen som inträffar när du öppnar en arbetsbok. Så om vi vill att vissa åtgärder ska utföras när vi öppnar en bok, bör vi placera det nödvändiga programfragmentet i proceduren Arbetsbok_Öppna. Programmering av denna händelse kommer att diskuteras i exemplen nedan.

Nästa objekt i hierarkin efter Arbetsbokär ett föremål Arbetsblad, som representerar arbetsbladet. Av mångfalden av metoder för detta objekt används det flitigt Aktivera, som också finns för arbetsbladsfamiljen, som vi redan nämnde ovan. Till exempel, om du, när du arbetar med det första arket i en Microsoft Excel-arbetsbok, måste aktivera det andra arket, bör programradsyntaxen i proceduren (den kan exekveras, till exempel genom att klicka på en knapp) se ut så här detta: Arbetsblad(2).Aktivera. Om du vill aktivera arket kallas Information om företag, då bör du skriva följande konstruktion i proceduren: Arbetsblad("Information om företag").Aktivera.

Användare av Microsoft Excel vet att den här applikationen erbjuder en tjänst relaterad till skyddet av arbetsböcker och de ark som de består av. Ja, metoden Skydda(Arbetsbladsfamiljen) skyddar kalkylbladet från ändringar. För att programmatiskt installera lösenordsskydd (lösenordet anges i parametern Lösenord för denna metod) för ett ark med namnet Anställda du kan göra det här:

1 2 Arbetsblad("Anställda").Protect Password:="zv2345" , _ DrawingObjects:=True , Contents:=True , Scenarios:=True

Arbetsblad("Anställda").Protect Password:="zv2345", _ DrawingObjects:=True, Contents:=True, Scenarios:=True

Det finns också en motsvarande metod Avskydda, vilket gör att du kan ta bort skyddet från arket. För nyinstallerat skydd är metoden för att ta bort det: Arbetsblad("Anställda"). Unprotect Password:="zv2345" . Allt praktiskt arbete i Microsoft Excel, på ett eller annat sätt, gäller information i celler. För att arbeta med celler i VBA finns ett objekt Räckvidd(översatt som ett cellintervall). Att använda det här objektet kräver att parametern ställs in på det cellintervall som intresserar oss. Detta kan vara en enskild cell eller en grupp av celler. Så, om vi skriver Worksheets(1).Range (“C5”).Value = 7, betyder det att vi programmatiskt skriver in siffran 7 i cell C5 i det första arket. Objektets huvudegenskap används här Räckvidd - Värde. Bokstavligen betyder det värdet eller innehållet i en cell (grupp av celler). I följande konstruktion matas samma uppsättning bokstäver ABSDE programmatiskt in i en uppsättning celler: Worksheets(1).Range("A1:A3").Value = "ABSDE)." .!}

Ett annat sätt att arbeta med celler är att använda objektet Celler, och syntaxen för att använda den är som följer: Celler (radnummer, kolumnnummer). Faktum är att föremålen i fråga liknar varandra ur deras användningssynpunkt. Till exempel kan du få värdet på cell D5 i variabeln Z på två olika sätt: Z = Range("D5").Value eller Z = Cells(5,4).Value. Som ett exempel på en programdesign för detta ämne kan följande uppgift ges:

1 2 Arbetsblad(2).Range("C5" ).Value = _ Arbetsblad(3).Cells(5, 1).Value.

Worksheets(2).Range("C5").Value = _ Worksheets(3).Cells(5, 1).Value.