Excel acil yardım

Kodla Büyü

faruks

Seçkin Üye
Seçkin Üye
Mesajlar
290
Merhaba. Excel de 5 adet sınıf listem var. Bu listelerin üçüncü sütununda bölümler yazılı (Sayısal, Sözel, Eşit Ağırlık). Üç ayrı sayfa daha oluşturdum sayısal, sözel ve eşit ağırlık adında. Sınıf tablolarına yazdığım bölüm seçimlerini diğer kısımlara nasıl aktara bilirim. Otomatik çekmesini istiyorum. Bölüm değişince sayfa da güncellenecek. Ben örnek bir excel tablosu oluşturdum. Yardımcı olabilecek arkadaş varsa çok memnun olurum.
 

Ekli dosyalar

  • Bölüm Seçimi.rar
    11.8 KB · Görüntüleme: 14
Sub Süz()
Application.ScreenUpdating = False
Sheets("SAYISAL").Range("A2:C1000") = ""
Sheets("SÖZEL").Range("A2:C1000") = ""
Sheets("EŞİT AĞIRLIK").Range("A2:C1000") = ""
For i = 1 To 4
For j = 2 To Sheets(i).Cells(Rows.Count, 1).End(3).Row
If Sheets(i).Cells(j, 3) = "SAYISAL" Then
son = Sheets("SAYISAL").Cells(Rows.Count, 1).End(3).Row + 1
Sheets("SAYISAL").Cells(son, 1) = Sheets(i).Cells(j, 1).Value
Sheets("SAYISAL").Cells(son, 2) = Sheets(i).Cells(j, 2).Value
Sheets("SAYISAL").Cells(son, 3) = Sheets(i).Cells(j, 3).Value
End If

If Sheets(i).Cells(j, 3) = "SÖZEL" Then
son = Sheets("SÖZEL").Cells(Rows.Count, 1).End(3).Row + 1
Sheets("SÖZEL").Cells(son, 1) = Sheets(i).Cells(j, 1).Value
Sheets("SÖZEL").Cells(son, 2) = Sheets(i).Cells(j, 2).Value
Sheets("SÖZEL").Cells(son, 3) = Sheets(i).Cells(j, 3).Value
End If

If Sheets(i).Cells(j, 3) = "EŞİT AĞIRLIK" Then
son = Sheets("EŞİT AĞIRLIK").Cells(Rows.Count, 1).End(3).Row + 1
Sheets("EŞİT AĞIRLIK").Cells(son, 1) = Sheets(i).Cells(j, 1).Value
Sheets("EŞİT AĞIRLIK").Cells(son, 2) = Sheets(i).Cells(j, 2).Value
Sheets("EŞİT AĞIRLIK").Cells(son, 3) = Sheets(i).Cells(j, 3).Value
End If


Next
Next
End Sub


Kodu deneyiniz.
 

Ekli dosyalar

  • Bölüm Seçimi.rar
    25.7 KB · Görüntüleme: 23
Sub Süz()
Application.ScreenUpdating = False
Sheets("SAYISAL").Range("A2:C1000") = ""
Sheets("SÖZEL").Range("A2:C1000") = ""
Sheets("EŞİT AĞIRLIK").Range("A2:C1000") = ""
For i = 1 To 4
For j = 2 To Sheets(i).Cells(Rows.Count, 1).End(3).Row
If Sheets(i).Cells(j, 3) = "SAYISAL" Then
son = Sheets("SAYISAL").Cells(Rows.Count, 1).End(3).Row + 1
Sheets("SAYISAL").Cells(son, 1) = Sheets(i).Cells(j, 1).Value
Sheets("SAYISAL").Cells(son, 2) = Sheets(i).Cells(j, 2).Value
Sheets("SAYISAL").Cells(son, 3) = Sheets(i).Cells(j, 3).Value
End If

If Sheets(i).Cells(j, 3) = "SÖZEL" Then
son = Sheets("SÖZEL").Cells(Rows.Count, 1).End(3).Row + 1
Sheets("SÖZEL").Cells(son, 1) = Sheets(i).Cells(j, 1).Value
Sheets("SÖZEL").Cells(son, 2) = Sheets(i).Cells(j, 2).Value
Sheets("SÖZEL").Cells(son, 3) = Sheets(i).Cells(j, 3).Value
End If

If Sheets(i).Cells(j, 3) = "EŞİT AĞIRLIK" Then
son = Sheets("EŞİT AĞIRLIK").Cells(Rows.Count, 1).End(3).Row + 1
Sheets("EŞİT AĞIRLIK").Cells(son, 1) = Sheets(i).Cells(j, 1).Value
Sheets("EŞİT AĞIRLIK").Cells(son, 2) = Sheets(i).Cells(j, 2).Value
Sheets("EŞİT AĞIRLIK").Cells(son, 3) = Sheets(i).Cells(j, 3).Value
End If


Next
Next
End Sub


Kodu deneyiniz.
Çok teşekkür ederim.
 
Office 2019 ve üstü ile Office 365 sürümlerinde yeni gelen formülerden, FİLTRE ve DÜŞEYYIĞ formüllerini kullanarak makrosuz bir çalışma yaptım.

Bu formülleri kullanmayı öğrenmemde faydası oldu.
 

Ekli dosyalar

  • Bölüm Seçimi düşeyyığ deneme.rar
    17.3 KB · Görüntüleme: 16
Geri
Üst