Vba kullanarak sayfalar nasıl count edilir?

Excel’de çok sayıda sayfanız varsa bunları manuel olarak saymak veya herhangi bir formül kullanmak yerine VBA kodunu kullanarak bunları hızlı bir şekilde sayabilirsiniz. Yani makalede bir çalışma kitabının sayfalarını saymanın farklı yollarını göreceğiz.

Etkin çalışma kitabındaki sayfaları sayma

Aktif çalışma kitabı sayfasını saymak için kullanmanız gereken kod aşağıdadır.

aktif-ciltleyiciden-sayfa-sayma-formu
 ThisWorkbook.Sheets.Count

Bu kodda öncelikle “ThisWorkbook” kullanarak aktif çalışma kitabına başvurdunuz ve tüm sayfalara başvurdunuz, son olarak tüm sayfaları saymak için count yöntemini kullandınız. Sayfalar yerine çalışma sayfalarını saymak istiyorsanız aşağıdaki kodu kullanın.

 ThisWorkbook.Worksheets.Count

Yararlı bağlantılar: Makro çalıştırmaMakro kaydediciVisual Basic DüzenleyiciKişisel Makrolar El Kitabı

Başka bir çalışma kitabındaki sayfaları sayın

Çalışma kitabına başvurmak için adını kullanabilir ve ardından içindeki sayfaları sayabilirsiniz. Diyelim ki “Kitap1” çalışma kitabındaki sayfaları saymak istiyorsunuz.

İşte kod.

 Workbooks("sample-file.xlsx").Sheets.Count

Bu kod size “sample-file.xlsx” çalışma kitabındaki sayfa sayısını verir. Bu klasörün alınması gereken bir şey var, açık olması gerekiyor.

Tüm açık ciltlerin sayfalarını sayın

Aynı anda birden fazla çalışma kitabını açık tutabilir ve tüm bu çalışma kitaplarındaki sayfaları sayabilirsiniz.

 Sub vba_loop_all_sheets() Dim wb As Workbook Dim i As Long For Each wb In Application.Workbooks If wb.Name <> "PERSONAL.XLSB" Then i = i + wb.Sheets.Count End If Next wb MsgBox "Total sheets in all the open workbooks: " & i End Sub

Kapalı bir dosyanın sayfalarını saymak

Artık sistem masaüstümde kayıtlı çalışma kitabına atıfta bulunan bazı kodlarımız var. Bu kodu çalıştırdığımda arkadaki bu çalışma kitabını açıyor ve içindeki sayfaları sayıyor, sonra bu sayımı A1 hücresine ekliyor.

 Sub vba_count_sheets() Dim wb As Workbook Application.DisplayAlerts = False Set wb = Workbooks.Open("C:UsersDellDesktopsample-file.xlsx") ThisWorkbook.Sheets(1).Range("A1").Value _ = wb.Sheets.Count wb.Close SaveChanges:=True Application.DisplayAlerts = True End Sub

Dosyanın arka uçta açılması ve kapatılmasına ilişkin ekran uyarılarını devre dışı bıraktık.

Yorum ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir