Šajā rakstā tiks apskatīts ActiveSheet objekts VBA. Tajā tiks arī apspriests, kā aktivizēt, atlasīt un atvērt darblapas (un daudz ko citu). Lai iegūtu papildinformāciju par darbu ar darblapām VBA, izlasiet mūsu pilnu VBA darblapu rokasgrāmatu.
ActiveSheet
VBA ActiveSheet attiecas uz pašlaik aktīvo darblapu. Vienlaikus var būt aktīva tikai viena lapa.
Aktivizēt darblapu (ActiveSheet iestatīšana)
Lai iestatītu ActiveSheet, izmantojiet darblapu. Aktivizēt:
1 | Darblapas ("Ievades"). Aktivizēt |
Komanda Aktivizēt lapu faktiski “pāries” uz lapu, mainot redzamo lapu.
Iepriekš minētajā piemērā tiek izmantots lapas (cilnes) nosaukums. Tā vietā darblapai varat izmantot VBA koda nosaukumu:
1 | 1. lapa. Aktivizēt |
ActiveSheet nosaukums
Lai iegūtu ActiveSheet nosaukumu:
1 | msgbox ActiveSheet.name |
Atlasītās lapas salīdzinājumā ar ActiveSheet
Jebkurā brīdī ActiveSheet var būt tikai viena lapa. Tomēr vienlaikus var atlasīt vairākas darblapas.
Ja ir atlasītas vairākas darblapas, tikai visaugstākā darblapa tiek uzskatīta par aktīvu (ActiveSheet).
Atlasiet darblapu
Ja vēlaties atlasīt darblapu, nevis to aktivizēt. Tā vietā izmantojiet .Izvēlieties.
Atlasiet darblapu pēc cilnes nosaukuma
Tādējādi tiek atlasīta darblapa, pamatojoties uz lapas cilnes nosaukumu
1 | Izklājlapas ("Ievadi"). Izvēlieties |
Atlasiet darblapu pēc indeksa numura
Tādējādi tiek atlasīta darblapa, pamatojoties uz tās atrašanās vietu salīdzinājumā ar citām cilnēm
1 | Darblapas (1). Atlasiet |
Atlasiet darblapu ar VBA koda nosaukumu
1 | 1. lapa. Izvēlieties |
Atlasot darblapas pēc koda nosaukuma, var novērst kļūdas, ko izraisa darblapas nosaukuma maiņa.
Atlasiet Pašreizējā darblapa
Lai atlasītu pašreizējo darblapu, izmantojiet ActiveSheet objektu:
1 | ActiveSheet. Atlasiet |
Vairāk Aktivizēt / atlasīt lapu piemērus
Iestatiet ActiveSheet uz Mainīgs
Tas piešķirs ActiveSheet darblapas objekta mainīgajam.
123 | Dim ws kā darblapaIestatiet ws = ActiveSheet |
Mainīt ActiveSheet nosaukumu
Tas mainīs ActiveSheet nosaukumu.
1 | ActiveSheet.Name = "JaunsNosaukums" |
Ar ActiveSheet
Izmantojot paziņojumu Ar paziņojumu, varat racionalizēt kodu, strādājot ar objektiem (piemēram, Izklājlapas vai ActiveSheet).
12345 | Ar ActiveSheet.Name = "StartFresh".Šūnas.Skaidrs.Range ("A1"). Vērtība = .NosaukumsBeigt ar |
Ievērojiet, kā jums nav jāatkārto “ActiveSheet” pirms katras koda rindas. Tas var ievērojami ietaupīt laiku, strādājot ar garu komandu sarakstu.
Pārvietoties pa atlasītajām lapām
Tālāk norādītais makro apskatīs visas atlasītās lapas, parādot to nosaukumus.
12345678 | Apakšdaļa GetSelectedSheetsName ()Dim ws kā darblapaPar katru ws ActiveWindow.SelectedSheetsMsgBox ws.NameNākamais wsBeigu apakš |
Iet uz nākamo lapu
Šis kods tiks pārvietots uz nākamo lapu. Ja ActiveSheet ir pēdējā lapa, tā tiks novirzīta uz pirmo darbgrāmatas lapu.
12345 | Ja ActiveSheet.Index = darblapas. Skaitīt pēc tamDarblapas (1). AktivizētCitādiActiveSheet.Next.ActivateBeigas Ja |