Excel'de her satır için yeni sayfalar nasıl oluşturulur?
Veri yönetimi veya raporlama görevlerinde, bazen bir tablodaki her kaydı kendi çalışma sayfasına ayırmak isteyebilirsiniz. Örneğin, Excel'de öğrenci bilgilerini tutuyorsanız ve her satır farklı bir öğrencinin bilgilerini gösteriyorsa, her öğrenci için ayrı bir sayfa oluşturmak isteyebilirsiniz; her biri onların belirli verilerini içersin. Alternatif olarak, içeriklerinden bağımsız olarak her satırı bölmek isteyebilirsiniz, böylece her biri kendi çalışma sayfasında yer alsın. Yeni sayfalar oluşturup verileri elle kopyalamak zaman alıcı olabilir ve hata yapma riskini artırabilir, özellikle büyük bir veri kümesiyle çalışıyorsanız. Bu işlemin otomatikleştirilmesi önemli ölçüde zaman kazandırır ve hata riskini azaltır. Bu kılavuz, Excel'de her satır için yeni sayfalar oluşturmaya yönelik iki pratik çözümü ele alır ve her yöntemin avantajlarını ve dezavantajlarını açıklar, böylece senaryonuz için en iyi yaklaşımı seçmenize yardımcı olur.
VBA kodu ile her satır için yeni sayfalar oluşturun
Kutools for Excel'in Veriyi Böl özelliği ile her satır için yeni sayfalar oluşturun
VBA kodu ile her satır için yeni sayfalar oluşturun
VBA (Visual Basic for Applications) kullanmak, aksi takdirde sıkıcı ve tekrarlayan olan Excel görevlerini otomatikleştirmenin etkili bir yoludur. VBA ile, verilerinizdeki her satır için yeni çalışma sayfaları hızlıca oluşturabilirsiniz; ya bir sütuna göre satırları gruplandırarak (örneğin, öğrenci adı), ya da içerikten bağımsız olarak her bir satır için bir sayfa oluşturarak. Bu yaklaşım, VBA düzenleyicisi ile rahat olan ve oldukça özelleştirilebilir bir çözüm tercih eden kullanıcılar için idealdir. Ancak, bu yöntem kod düzenleme ve çalıştırma gerektirdiğinden, VBA konusunda deneyimi olmayan veya ortamlarında makroları çalıştırmak için izinleri bulunmayan kullanıcılar için uygun olmayabilir.
1. Excel işlemleri otomatikleştirmek için VBA koduna erişim sağlayan Microsoft Visual Basic for Applications penceresini açmak için "Alt" + "F11" tuşlarına basın.
2. Microsoft Visual Basic for Applications penceresinde, yeni bir kod modülü eklemek için Ekle > Modül'e tıklayın. Ardından aşağıdaki kodu Modül penceresine kopyalayıp yapıştırın.
VBA kodu: Belirli bir sütuna göre her satır için yeni sayfa oluştur
Sub parse_data()
'Update by Extendoffice 2018/3/2
Dim xRCount As Long
Dim xSht As Worksheet
Dim xNSht As Worksheet
Dim I As Long
Dim xTRrow As Integer
Dim xCol As New Collection
Dim xTitle As String
Dim xSUpdate As Boolean
Set xSht = ActiveSheet
On Error Resume Next
xRCount = xSht.Cells(xSht.Rows.Count, 1).End(xlUp).Row
xTitle = "A1:C1"
xTRrow = xSht.Range(xTitle).Cells(1).Row
For I = 2 To xRCount
Call xCol.Add(xSht.Cells(I, 1).Text, xSht.Cells(I, 1).Text)
Next
xSUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
For I = 1 To xCol.Count
Call xSht.Range(xTitle).AutoFilter(1, CStr(xCol.Item(I)))
Set xNSht = Nothing
Set xNSht = Worksheets(CStr(xCol.Item(I)))
If xNSht Is Nothing Then
Set xNSht = Worksheets.Add(, Sheets(Sheets.Count))
xNSht.Name = CStr(xCol.Item(I))
Else
xNSht.Move , Sheets(Sheets.Count)
End If
xSht.Range("A" & xTRrow & ":A" & xRCount).EntireRow.Copy xNSht.Range("A1")
xNSht.Columns.AutoFit
Next
xSht.AutoFilterMode = False
xSht.Activate
Application.ScreenUpdating = xSUpdate
End Sub
Parametre açıklaması ve kullanım ipuçları:
- A1:C1, veri tablonuzun başlık aralığıdır. Gerçek veri başlık alanınızla eşleşmesi için bu referansı gereken şekilde ayarlayın.
- Kod, belirtilen sütundan (varsayılan olarak A sütunu) benzersiz değerleri toplar. Her benzersiz değer, ilgili satırlarla birlikte kendi çalışma sayfasını alır.
- Tablonuz daha genişse veya farklı bir satırdan başlıyorsa,
xTitle
ve hücre referanslarını buna göre güncelleyin. - Çalışma sayfanızda diğer sayfaları referans alan formüller varsa, bölme işleminden sonra referansları kontrol edin.
3. Kodu çalıştırmak için F5 tuşuna basın veya Çalıştır'a tıklayın. Yeni çalışma sayfaları, mevcut çalışma kitabındaki tüm mevcut sayfaların ardından oluşturulacak ve her biri seçilen benzersiz sütun değerine göre adlandırılacaktır. Örnek bir sonuç için aşağıdaki ekran görüntüsüne bakın:
Sütun içeriğinden bağımsız olarak her satırı kendi çalışma sayfasına bölmek istiyorsanız, aşağıdaki alternatif VBA kodunu kullanabilirsiniz. Bu, bir sütun koşulu belirtme ihtiyacını ortadan kaldırır.
VBA kodu: Her satır için doğrudan yeni sayfa oluştur
Sub RowToSheet()
Dim xRow As Long
Dim I As Long
With ActiveSheet
xRow = .Range("A" & Rows.Count).End(xlUp).Row
For I = 1 To xRow
Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row " & I
.Rows(I).Copy Sheets("Row " & I).Range("A1")
Next I
End With
End Sub
Bu kodu modülde çalıştırdıktan sonra, aktif çalışma sayfasındaki her satır—başlık satırı dahil—yeni oluşturulan bir çalışma sayfasına kopyalanır. Başlık satırının da çoğaltıldığını unutmayın; eğer bunu önlemek istiyorsanız, çıktı sayfalarını daha sonra el ile silmeniz veya ayarlamanız gerekebilir.
Sorun giderme ve pratik ipuçları:
- "Alt simge aralığının dışında" gibi bir hata alırsanız, sayfa adlarınızın geçersiz karakterler veya yinelenen adlar içermediğinden emin olun.
- Büyük veri kümeleri, çok sayıda sayfa üretebilir, bu da Excel'i yavaşlatabilir veya gezinmeyi zorlaştırabilir. Çok büyük tablolar için satır bazında bölmenin gerekli olup olmadığını göz önünde bulundurun.
- VBA kodunu çalıştırmadan önce verilerinizin yedek bir kopyasını muhafaza edin, böylece istenmeyen veri kaybını önlersiniz.
Avantajlar: Ücretsiz; yüksek düzeyde özelleştirilebilir.
Dezavantajlar: VBA/makroların etkinleştirilmesini ve VBA düzenleyiciye aşinalığı gerektirir; karmaşık veya sıra dışı verilerle kod hataları olabilir.
Uygun olanlar: Betik esnekliğine ihtiyaç duyan ve tek seferlik veya düzensiz görevler için uygun kullanıcılar.
Kutools for Excel'in Veriyi Böl özelliği ile her satır için yeni sayfalar oluşturun
Kod yazmadan basit ve kullanıcı dostu bir yaklaşımı tercih ediyorsanız, Kutools for Excel'in Veriyi Böl özelliği şiddetle tavsiye edilir. Bu işlev, birkaç tıklamayla verileri yeni çalışma sayfalarına bölmeye yardımcı olur, çalışma sayfası yönetim sürecini önemli ölçüde basitleştirir. Kutools, özellikle düzenli olarak büyük ve karmaşık tablolarla uğraşan veya manuel kodlamaya grafiksel arayüzler tercih eden kullanıcılar için faydalıdır. Unutmayın, Kutools bir Excel eklentisidir ve önceden kurulması gerekir.
1. Verileri ayrı çalışma sayfalarına bölmek istediğiniz tabloyu seçin. Ardından, Kutools Plus sekmesine tıklayın ve Veriyi Böl'ü seçin. Açıklık için aşağıdaki ekran görüntüsüne bakın:
2. Veriyi Çoklu Çalışma Sayfalarına Böl iletişim kutusunda, bölme ihtiyaçlarınıza göre uygun ayarları seçin.
A. Sütun değerlerine göre yeni sayfalar oluşturmak için:
B. Her satır için doğrudan yeni sayfalar oluşturmak için:
Yürütmeden sonra, seçtiğiniz ayarlara göre doldurulmuş tüm yeni çalışma sayfalarını içeren yeni bir çalışma kitabı oluşturulacaktır.
Sütun değerlerine göre her satır için yeni sayfalar oluşturma:
Sütun değerlerini dikkate almadan her satır için yeni sayfa oluşturma:
Önlemler ve pratik ipuçları:
- Veriyi Böl özelliğini kullanmadan önce, tablonuzda boş satırlar olmadığından emin olun, çünkü bunlar boş sayfalara neden olabilir.
- Çalışma sayfası adlandırma kurallarını gözden geçirin, yinelenen veya geçersiz çalışma sayfası adlarından kaçının; bir isim çakışması durumunda Kutools otomatik olarak ayarlayacaktır.
- Tablonuz çok büyükse, süreç çok sayıda çalışma sayfası üretebilir, bu yüzden devam etmeden önce bunu göz önünde bulundurun.
Avantajlar: Kod yazmaya gerek olmadan kullanımı kolay; toplu işleme ve sık kullanılan görevler için uygundur.
Dezavantajlar: Kutools eklentisinin kurulu olmasını gerektirir.
Uygun olanlar: Tüm seviyelerdeki Excel kullanıcıları, özellikle tekrarlayan veri segmentasyonuyla uğraşanlar.
Kutools for Excel - Excel'i 300'den fazla temel araçla güçlendirin. Sürekli ücretsiz AI özelliklerinden yararlanın! Hemen Edinin
Demo: Kutools for Excel'in Veriyi Böl özelliği ile her satır için yeni sayfalar oluşturun
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi güçlendirin, daha önce hiç yaşamadığınız bir verimlilik deneyimini yaşayın. Kutools for Excel, üretkenliğinizi artıracak ve zamanı kaydetmenizi sağlayacak300’den fazla gelişmiş özellik sunar. En çok ihtiyaç duyduğunuz özelliği almak için buraya tıklayın...
Office Tab, Office’e sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır
- Word, Excel, PowerPoint’te sekmeli düzenleme ve okuma işlevini etkinleştirin.
- Aynı pencere içerisinde yeni sekmelerde birden fazla belge açın veya oluşturun, yeni pencerelerde açmak yerine.
- Verimliliğinizi %50 artırın, her gün yüzlerce fare tıklamasını sizin için azaltın!