VBA nosaukuma darblapa - Nosauciet Excel darblapu, izmantojot VBA

Satura rādītājs

Excel VBA nosaukuma darblapa

VBA darblapas nosaukšanai nav nepieciešamas īpašas prasmes. Mums vienkārši jānorāda, kuras lapas nosaukumu mēs mainām, ievadot esošās lapas nosaukumu. Piemēram, ja mēs vēlamies mainīt lapu ar nosaukumu “Pārdošana”, mums ir jāsauc lapa ar tās nosaukumu, izmantojot objektu Worksheet.

Darblapas (“Pārdošana”)

Pēc lapas nosaukuma pieminēšanas mums jāizvēlas rekvizīts “Nosaukums”, lai mainītu darblapas nosaukumu.

Darblapas (“Pārdošana”). Nosaukums

Tagad mums ir jāiestata nosaukums Nosaukums atbilstoši mūsu vēlmēm. Pieņemsim, ka vēlaties mainīt “Pārdošana” uz “Pārdošanas lapa”, pēc tam pēc rekvizīta “NAME” ielieciet vienādības zīmi un ievadiet jauno vārdu pēdiņās.

Darblapas (“Pārdošana”). Nosaukums = “Pārdošanas lapa”

Šādi mēs varam mainīt darblapas nosaukumu, izmantojot rekvizītu Name.

Darblapas nosaukšanas piemēri, izmantojot VBA

1. piemērs

Mainīt vai pārdēvēt lapu, izmantojot mainīgos.

Piemēram, apskatiet zemāk redzamo koda paraugu.

Kods:

Apakšnosaukuma_piemērs1 () Aptumšojiet Ws kā darblapu kopu Ws = Darblapas ("Pārdošana") Ws.Name = "Pārdošanas lapa" Beigu apakšdaļa

Pirmkārt, es iepriekš deklarēju mainīgo kā darblapu.

Dim Ws kā darblapa

Pēc tam es esmu iestatījis atsauci uz mainīgo kā “Pārdošana”, izmantojot darblapu objektu.

Iestatīt Ws = darblapas ("Pārdošana")

Tagad mainīgajam “Ws” ir atsauce uz darblapu “Sales”.

Tagad, izmantojot mainīgo “Ws”, darblapu esmu pārdēvējis par “Pārdošanas lapa”.

Šis kods mainīs nosaukumu “Pārdošana” uz “Pārdošanas lapa”.

Svarīga piezīme, kas jāatceras

Mēs tikko esam redzējuši, kā mainīt Excel darblapas nosaukumu no viena nosaukuma uz citu. Tomēr, ja mēs palaidīsim kodu vēlreiz, mēs saņemsim kļūdu Subscript Out of Range.

Viens no atslēgas veidiem, kā iegūt ekspertu VBA makros, ir kļūdu apstrāde. Pirms rīkoties ar kļūdām, mums jāzina, kāpēc mēs saņemam šo kļūdu.

Iemesls, kāpēc mēs saņemam šo kļūdu, jo pašā iepriekšējā darbībā mēs jau esam mainījuši darblapu ar nosaukumu “Pārdošana” uz “Pārdošanas lapa”.

Mums nav nevienas lapas ar nosaukumu “Pārdošana”. Mēs iegūsim šo apakšvirsraksta kļūdu.

2. piemērs

Iegūstiet visus darblapu nosaukumus vienā lapā .

Pieņemsim, ka jūsu darbgrāmatā ir daudz darblapu, un jūs vēlaties iegūt visu šo darblapu nosaukumus jebkurā no atsevišķajām darblapām. To var izdarīt, izmantojot VBA kodēšanu.

Piemēram, apskatiet zemāk redzamo attēlu.

Mums šeit ir tik daudz lapu.

Pie visām šīm lapām mums ir nepieciešams katras lapas nosaukums ar nosaukumu “Indeksa lapa”. Es jums esmu uzrakstījis zemāk redzamo kodu.

Kods:

Sub All_Sheet_Names () aptumšot Ws kā darblapu Dim LR tikpat ilgi kā katram W ActiveWorkbook.Worksheets LR = darblapas ("Indeksa lapa"). Šūnas (Rows.Count, 1) .End (xlUp) .Rinda + 1 'Šis LR mainīgais lai atrastu pēdējās izmantotās rindas šūnas (LR, 1). Atlasiet ActiveCell.Value = Ws.Name Next Ws End Sub

Tagad nokopējiet šo kodu savā modulī.

Tagad palaidiet kodu, nosaucot jebkuru no darblapām kā “Indeksa lapa”. Šis kods piešķirs visus darblapu nosaukumus sadaļā “Indeksa lapa”.

Izmantojot VBA darblapas rekvizītu “NAME”, mēs varam izspēlēties ar darblapu nosaukumu. Mēs varam pārdēvēt, izvilkt un izvēlēties konkrētu darblapu un veikt daudzas citas darbības, ko var izdarīt, izmantojot rekvizītu “Nosaukums”.

Atceramās lietas

  • NAME VBA ir īpašums.
  • Izmantojot šo nosaukumu, mēs varam pārdēvēt darblapu un arī iegūt lapu nosaukumus.
  • Mēs varam mainīt jebkuru darblapas nosaukumu norādītajā darbgrāmatā, ja atsaucaties uz citām darbgrāmatām, nevis uz kodu rakstīto darbgrāmatu.
  • Ja darblapas nosaukums nesakrīt, mēs iegūsim apakšindeksu no diapazona.

Interesanti raksti...