Bu öğretici, VBA kullanarak çalışma sayfalarının nasıl ekleneceğini / ekleneceğini tartışacaktır.
Sayfa Ekle
Bu basit makro, ActiveSheet'ten önce bir Sayfa ekleyecektir:
123 | Alt Ekle ()E-Tablolar.EkleAlt Bitiş |
Bir Sayfa ekledikten sonra, yeni Sayfa, ActiveSheet olur. Ardından, yeni Sayfa ile çalışmak için ActiveSheet nesnesini kullanabilirsiniz (Bu makalenin altında, bir değişkene doğrudan yeni bir sayfanın nasıl ekleneceğini göstereceğiz).
1 | ActiveSheet.Name = "Yeni Sayfa" |
Adlı Sayfa Ekle
Yeni Sayfayı oluştururken bir Sayfa adı da tanımlayabilirsiniz:
1 | Sheets.Add.Name = "Yeni Sayfa" |
Bir Hücreden Ad ile Yeni Sayfa Oluşturma
Veya yeni bir Sayfayı adlandırmak için bir hücre değeri kullanın:
1 | Sheets.Add.Name = aralık("a3").değer |
Sayfayı Başka Bir Sayfadan Önce / Sonra Ekle
Yeni Sayfanın ekleneceği konumu da seçmek isteyebilirsiniz. Çalışma kitabında belirli bir konuma bir sayfa eklemek için Sonra veya Önce özelliklerini kullanabilirsiniz.
Sayfayı Başka Bir Sayfadan Sonra Ekle
Bu kod, yeni sayfayı başka bir sayfadan SONRA ekleyecektir:
1 | Sheets.Add After:= Sheets("Giriş") |
Bu, başka bir sayfadan SONRA yeni bir Sayfa ekleyecek ve Sayfa adını belirleyecektir:
1 | Sheets.Add(Sonra:=Sayfalar("Giriş")).Name = "YeniSayfa" |
İkinci örnekte gereken fazladan parantezlere dikkat edin (ikinci parantez eklenirse birinci örnek bir hata üretecektir).
ya da önce:
1 | Sheets.Add(Önce:=Sayfalar("Giriş")).Name = "YeniSayfa" |
Bu örneklerde, sayfa konumunu belirlemek için kullanılan Sayfayı açıkça adlandırdık. Sayfayı Çalışma Kitabının başına veya sonuna ekleyebilmek için genellikle bunun yerine Sayfa Dizini numarasını kullanmak isteyeceksiniz:
Çalışma Kitabının Sonuna Sayfa Ekle
Çalışma kitabının sonuna bir Sayfa eklemek için:
1 | Sheets.Add After:= Sheets(Sheets.Count) |
Çalışma Kitabının Başına Sayfa Ekle:
Çalışma kitabının başına bir Sayfa eklemek için:
1 | Sheets.Add(Before:=Sheets(1)).Name = "İlk Sayfa" |
Değişkene Sayfa Ekle
Bu kod, yeni Sayfayı, sayfa oluşturulurken bir değişkene atar:
12 | Dim ws As Çalışma Sayfasıws = E-Tablolar'ı ayarla.Add |
Buradan yeni sayfaya 'ws' değişkeni ile başvurabilirsiniz:
1 | ws.name = "VarSheet" |
Daha Fazla Sayfa Örneği Ekle
Zaten Mevcut Değilse Sayfa Oluştur
Yalnızca zaten mevcut değilse bir sayfa oluşturmak isteyebilirsiniz.
İsim Listesinden Çalışma Sayfaları Oluşturun
Aşağıdaki yordam, geçerli çalışma kitabında bu adlarla tek bir sütun ayarlı Excel çalışma sayfalarının içeriğine bakacaktır. Bu ada sahip bir sayfanın zaten var olup olmadığını ve varsa sayfanın oluşturulmadığını görmek için başka bir işleve çağrı yapar.
1234567891011121314151617181920212223242526 | Özel Alt KomutDüğmesi1_Click()CreateWorksheets(Sheets("Sheet2").Range("A1:a10")) çağırınAlt BitişSub CreateWorksheets(Names_Of_Sheets As Range)Dim No_Of_Sheets_to_be_Tamsayı Olarak EklendiDize Olarak Sayfa_Adı DimDim i Tamsayı OlarakNo_Of_Sheets_to_be_Added = Names_Of_Sheets.Rows.Counti = 1 için No_Of_Sheets_to_be_AddedSheet_Name = Names_Of_Sheets.Cells(i, 1).Value'Yalnızca zaten mevcut değilse ve ad sıfır karakterden uzunsa sayfa ekleyinEğer (Sheet_Exists(Sheet_Name) = False) Ve (Sheet_Name "") O zamanWorksheets.Add().Name = Sheet_NameBitirsonraki benAlt Bitiş |
1234567891011121314 | İşlev Sheet_Exists(WorkSheet_Name As String) As BooleanÇalışma Sayfası Olarak Dim Work_sheetSheet_Exists = YanlışThisWorkbook.Worksheets'teki Her Çalışma Sayfası İçinWork_sheet.Name = WorkSheet_Name iseSheet_Exists = DoğruBitirSonrakiBitiş İşlevi |
Öyleyse, Sayfa 2'deki A1:A30 hücrelerinde aşağıdaki metne sahipsek:
Ardından aşağıdaki sayfalar oluşturulacaktır:
"Köpek" iki kez görünse de, yalnızca bir sayfanın oluşturulduğuna dikkat edin.
Bu eğitim için .XLS dosyasını indirmek için burayı tıklayın.