Fișe de lucru VBA - Cum se folosește obiectul Foaie de lucru în VBA?

Foi de lucru Excel VBA

Excel este un registru de lucru și în acel registru de lucru conține foi de lucru sau foi. Este foarte important să înțelegem conceptul de foi de lucru în VBA, deoarece tot timpul lucrăm cu foi de lucru. În fișierul Excel normal, îl numim foi, dar în terminologia VBA este denumit „Foaie de lucru”. Toate colecțiile unei foi de lucru se numesc „Foi de lucru”.

În VBA, Foaia de lucru este un obiect. Există două moduri de a face referire la foaia de lucru, una folosind obiectul „Foaie de lucru” și alta folosind obiectul „Foi”.

Știu că întrebarea dvs. este care este diferența dintre ele. În Excel, putem vedea două tipuri de foi, una este foi de lucru obișnuite, iar alta este foi de diagrame.

Fila Foaie de lucru din Excel consideră doar foile de lucru din registrul de lucru, cu excepția foilor de diagrame. „Foi” ia în considerare toate foile de lucru din registrul de lucru, inclusiv foaia grafică. De exemplu, uitați-vă la imaginea de mai jos.

În cele de mai sus, avem un total de 5 coli. Din aceste 5 foi, 3 sunt foi de lucru, iar 2 sunt foi de diagrame.

Aici numărul „Foaie de lucru” este 3, iar numărul „Foi” este 2.

Acum, uită-te la imaginea de mai jos.

Aici toate foile sunt foi de lucru, deci numărul de „Foaie de lucru” și „Foi” este de 3.

Deci, ca parte a codului, dacă doriți să utilizați foi de lucru, obiectele rețin acest punct.

Sintaxa foilor de lucru VBA

După cum am spus, foaia de lucru este o variabilă obiect. Totuși, aceasta are și sintaxă.

Indexul nu este nimic din numărul fișei de lucru la care ne referim. După cum puteți vedea în cele din urmă, acesta este denumit obiect.

De exemplu, Foaie de lucru (1). Selectați înseamnă să selectați prima foaie de lucru a registrului de lucru. Nu contează care este numele fișei de lucru; indiferent de foaia de lucru inserată mai întâi în registrul de lucru va fi selectat.

De asemenea, ne putem referi la foaia de lucru și după numele acesteia. Trebuie să menționăm completul, deoarece este un nume de foaie de lucru între ghilimele duble.

De exemplu, Foaie de lucru („Foaie de vânzări”). Selectare înseamnă selectați foaia denumită „Foaie de vânzare”. Aici nu contează care este numărul foii de lucru, selectează întotdeauna foaia de lucru specificată.

Cum se folosește Worksheets Object în VBA?

Exemplul nr. 1

De exemplu, să presupunem că aveți în total 5 foi în registrul dvs. de lucru, iar numele acelor foi de lucru sunt „Foaia de lucru 1”, „Foaia de lucru 2”, „Foaia de lucru 3”, „Foaia de diagrame 1” și „Foaia de diagrame 2”.

Dacă folosesc numerotarea pentru a selecta foaia de lucru, atunci pot folosi numărul ca referință a foii de lucru.

Foaie de lucru (2). Selectare înseamnă că va selecta a doua foaie de lucru a registrului de lucru.

Cod:

Sub Foaie de lucru_Exemplu1 () Foi de lucru (2). Selectați Încheiere sub

Voi rula acest cod folosind tasta F5 sau manual și voi vedea rezultatul.

Acum voi schimba numărul foii la 3.

Cod:

Sub Foaie de lucru_Exemplu1 () Foi de lucru (3). Selectați Încheiere sub

Acum vedeți ce se întâmplă atunci când rulați codul manual sau utilizând codul cheii F5.

Dacă te uiți la imaginea de mai sus, a selectat a 4- a foaie de lucru când am cerut să selectez a 3 -a foaie de lucru.

Acest lucru se datorează faptului că am folosit obiectul Foaie de lucru, nu obiectul Foi. După cum am spus mai devreme, obiectul „Foi de lucru” consideră doar foi de lucru, nu foi de diagrame.

Pentru a selecta a treia foaie din toate foile din registrul de lucru, utilizați obiect Foi.

Cod:

Sub Foaie de lucru_Exemplu1 ()

Foi (3). Selectați

Sfârșitul Sub

Acum va selecta a treia foaie exactă.

Exemplul # 2 - Selectați foi de lucru după nume

Selectarea foilor după numele lor este modalitatea exactă de referire a foii. De exemplu, dacă dorim să selectăm foaia „Foaia de lucru 3”, atunci puteți utiliza codul de mai jos.

Cod:

Sub Foaie de lucru_Exemplu2 () Foi de lucru („Foaia de lucru 3”). Selectați Încheiere sub

Aceasta va selecta foaia exactă; nu contează unde este plasat în registrul de lucru.

Dar dacă ați încercat să accesați foaia grafică cu obiectul „Foi de lucru”, vom primi „Eroare subscript în afara intervalului”.

Cod:

Sub Foaie de lucru_Exemplu2 () Fișe de lucru („Foaie de diagramă 1”). Selectați Încheiere sub

Rulați acest cod prin intermediul tastei F5 sau manual și vedeți rezultatul.

Exemplul # 3 - Problemă cu numele foii de lucru

Există încă o problemă cu referirea foilor după numele ei. Dacă cineva schimbă numele foii de lucru, din nou, vom primi „Eroare de subscriere în afara intervalului”.

Pentru a rezolva această problemă, accesați editorul de bază vizual apăsând tasta ALT + F11 .

Acum selectați numele foii și apăsați tasta F4 pentru a vedea fereastra de proprietăți.

În aceste proprietăți, fereastra schimbă numele foii de lucru în numele dvs.

Un lucru interesant aici este chiar dacă am schimbat numele foii de lucru din „Foaia de lucru 1” în „WS1”, putem vedea totuși același nume în registrul de lucru.

Acum putem consulta această foaie după numele „WS1”.

Cod:

Sub Foaie de lucru_Exemplu2 () Foi de lucru ("WS1"). Selectați Încheiere sub

Acum nu mai contează cine schimbă numele foii de lucru. Totuși, codul nostru se referă la aceeași foaie, atâta timp cât nu modifică editorul vizual de bază.

Exemplul # 4 - Obțineți numărul total de foi din registrul de lucru

O foaie de lucru este un obiect și putem folosi toate proprietățile și metodele asociate cu aceasta. Ce facem cu foile de lucru?

Inserăm foi de lucru. Redenumim foile de lucru. Ștergem foile de lucru și multe alte lucruri pe care le facem cu ea.

Introduceți obiectul „Foi de lucru” și puneți un punct pentru a vedea toate opțiunile cu ele.

Pentru a obține numărul de foi de lucru, utilizează VBA Count Property.

Cod:

Sub Foaie de lucru_Exemplu3 () Dim i As Long i = Worksheets.Count MsgBox i End Sub

Aceasta va arăta numărul fișelor de lucru.

Chiar dacă există 5 foi, am obținut numărul 3, deoarece celelalte 2 foi sunt foi de diagrame.

Pentru a obține numărul total de foi, folosește obiectul „Foi”.

Cod:

Sub Foaie de lucru_Exemplu3 () Dim i As Long i = Sheets.Count MsgBox i End Sub

Aceasta va arăta numărul complet al foilor.

Exemplul # 5 - Metode care folosesc obiectul Foaie de lucru

După introducerea obiectului foii de lucru, putem accesa toate proprietățile și obiectele asociate acestuia. Putem adăuga o nouă foaie. Putem șterge etc.

Pentru a adăuga o foaie nouă.

Foaie de lucru.Adăugare

Pentru a șterge foaia de lucru

Foaie de lucru („Nume foaie”). Ștergeți

Pentru a schimba numele foii de lucru

Foaie de lucru („Nume foaie”). Nume = „Nume nou”

Articole interesante...