VBA - Dodajanje lista v delovni zvezek

VBA - Dodajanje lista v delovni zvezek

Uvod

Glede na rezultat, ki ga želite doseči, lahko uporabite:
  • Metoda kopiranja => Za kopijo obstoječega lista
  • Dodaj metodo => Dodajanje novega praznega lista v delovni zvezek.

Prav tako se morate prepričati, da je ime novega lista skladno. To pomeni, da ime lista ne sme biti enako obstoječemu ali vsebovati prepovedanih znakov. V obeh primerih bi morale biti metode preverjanja enake.

Metoda kopiranja

Kopiranje lista. Podatki in oblika novega lista bodo enaki izvornemu listu.

Sintaksa

izraz. Kopiranje ( pred, po )

Izraz je lahko predmet list ali delovni list.

Parametri Pred in Po niso obvezni. Določite lahko samo enega od teh dveh parametrov. Ti so tipa Variant in lahko predstavljajo list najdejo pred ali po tistemu, ki ga želite kopirati. Če je parameter izpuščen, se list samodejno kopira v nov delovni zvezek.

Kaj se zgodi potem?

Pri ustvarjanju novega lista z metodo Kopiranje:
  • List je ustvarjen na želeni lokaciji (pred ali za drugim listom v delovnem zvezku)
  • Preimenuje se glede na ime izvornega lista. Primer: Sheet1 => List1 (2)
  • Enako je s kopiranim listom.
  • Postane aktivni list. Če se list kopira v nov delovni zvezek, postane delovni zvezek.

Primeri uporabe

Kopiraj "List1" za "Sheet3"

 Delovni listi ("Sheet1") Kopiraj po: = Delovni listi ("List3") 

Kopirajte "List4" pred "Sheet2":

 Listi ("List 4") Kopiraj pred: = listi ("List2") 

Kopirajte "recap" list v nov delovni zvezek

 Delovni listi ("recap") 

Kopirajte list, indeksiran kot 1, na zadnjem mestu delovnega zvezka, ne glede na ime zadnjega lista:

 Listi (1) .Kopiranje po: = listi (Sheets.Count) 

Kopirajte list, indeksiran kot 10 na začetku delovnega zvezka, ne glede na ime zadnjega lista:

 Listi (10) .Kopiranje pred: = listi (1) 

Želite kopirati več listov aktivnega delovnega knjige v nov delovni zvezek:

 Listi (matrika ("Sheet1", "Sheet3", "Sheet5")) 

Metoda dodajanja

Ustvari novo preglednico (grafiko ali makro). Novi delovni list postane aktivni list.

Ta novi list ne vsebuje podatkov ali oblikovanja.

Sintaksa

Izraz .Add ( Pred, Po, Count, Type )

Izraz je lahko predmet list ali delovni list.

Parametri Pred, Po, Štetje in Vrsta so neobvezni.

Eno in prej - Določite lahko samo enega od teh parametrov. Ti so tipa Variant in lahko predstavljajo list najdejo pred ali po tistemu, ki ga želite kopirati.

Parameter Count je tudi Variant. Predstavlja število listov, ki jih želite dodati.

Parameter Vrsta predstavlja vrsto lista, ki ga želite dodati.

  • xlWorkSheet - doda delovni list
  • xlChart - doda list grafikona
  • xlExcel4MacroSheet - doda list makra (Excel4)
  • xlExcel4IntlMacroSheet - doda list makra
  • xlDialogSheet - doda pogovorno okno.

Opomba: Ne pozabite preimenovati vaših parametrov ali pa sintaksa vrne spodnjo napako:

 ActiveWorkbook.Sheets.Add Before: = Delovni listi (Worksheets.Count),, 1, xlChart 

Primeri uporabe

Postavite list po zadnjem listu v delovnem zvezku:

 Sheets.Add After: = Delovni listi (Worksheets.Count) 

Doda tri liste na "prvi položaj" aktivnega delovnega zvezka:

 ActiveWorkbook.Sheets.Add Pred: = Delovni listi (1), Število: = 3 

Doda list grafikona v delovni zvezek z imenom "Wbk18" (Odpri!) Po listu z imenom "Sheet4"

 Delovne knjige ("Wbk18"). Sheets.Add After: = Delovni listi ("Sheet4"), vnesite: = xlChart 

Testiranje lista

Preverite, ali list že obstaja v delovnem zvezku

 "Preizkusite funkcijo funkcije Funkcija Feeil (strWbk kot niz, strWsh kot niz) Kot logični" Gestionnaire na napako nadaljuje naprej "" Test "Feuil_Exist = (Delovni zvezki (strWbk) .Sheets (strWsh) .Name = strWsh) Končna funkcija 

Preverite, ali ime datoteke vsebuje prepovedane znake

 Funkcija Valid_Name (strName Kot String, strChr kot String) Kot Boolean Dim i Kot Byte, Tb_Car () Kot String, strProhib As String strProhib = "/ * *" "|" 'Liste des caractères à éviter Tb_Car = Split (StrConv (strProhib, vbUnicode), Chr $ (0))' Boucle nad tous les caractères à éviter 'Nota: le -1 est dû au Split de la chaine par le séparateur Chr (0 ) 'En effet, la chaine se terminant par un Chr (0) il convient d'exclure ce dernier caractère Za i = LBound (Tb_Car) Za UBound (Tb_Car) - 1' Preskusi la chaîne contient un caractère prohibé Če InStr (strName), Tb_Car (i))> 0 Zatem 'Si oui: Vrni False Valid_Name = False' ET Retourne le caractère prohibé strChr = Tb_Car (i) Izhod Funkcija End Če Naprej i 'Si OK: Vrni se True Valid_Name = Funkcija True End 

Klicanje funkcije preverjanja

Koda je enaka za metodo Kopiraj ali Dodaj.
 Sub Principale () Dim strNewName Kot String, strCara Kot String strNewName = "NewSheet" Če Valid_Name (strNewName, strCara) = False Potem MsgBox "Le nom:" & strNewName & "est invalide." & vbCrLf & _ "Ne vnesite nobene izjave v zapisnik:" & strCara, vbCritical Exit Sub End Če je Feeil_Exist (ThisWorkbook.Name, strNewName) = True Torej MsgBox "Le nom:" & strNewName & "est invalide. " & vbCrLf & _ "Če želite izvedeti, ali ste uporabili to možnost.", vbCritical Exit Sub End Če je to knjigo.Sheets.Add 'Ou: ThisWorkbook.Sheets ("Feuil1"). Copy After: = Sheets (Sheets.Count) ActiveSheet.Name = strNewName End Sub 

Nekaj ​​koristnih nasvetov za Office 2013

Office 2013 prinaša dve dopolnilni metodi tistim, ki smo jih videli prej:
  • Kopirajte obseg celic na list in več listov
  • Metoda Add2 za zbirke predmetov grafikonov.

Kopirajte obseg celice z uporabo metode FillAcrossSheets

Ta metoda je na voljo samo za Office 2013. Kopiranje obsega celic iz "Sheet1" v "Sheet3", "Sheet5" in "Sheet7".

 Listi = Array ("Sheet3", "Sheet5", "Sheet7") Listi (listi) .PopraviSkladne liste Delovni listi ("Sheet1"). Razpon ("A1: C5") 

Parametri te metode so:

  • Območje: obvezno
  • Vrsta: Neobvezno
  • xlFillWithAll: Kopirajte vsebino in formate.
  • xlFillWithContents: Kopirajte vsebino.
  • xlFillWithFormats: Kopiranje formatov.

Metoda Add2

Ta metoda je na voljo samo za Office 2013. Ta metoda se uporablja za zbirke predmetov grafikonov in vrne napako " Runtime ", če se uporablja z objekti Sheets in WorkSheets. Ni več informacij o Microsoft.com, razen skladnje:

Izraz .Add ( Pred, Po, Count, NewLayout )

Izraz predstavlja objekt delovnega lista

Parametri so enaki metodi Add, preprosto nadomestite parameter Type z NewLayout. Če je nastavitev NewLayout nastavljena na True, se grafika vstavi z novimi pravili.

Prejšnji Članek Naslednji Članek

Top Nasveti