• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

İsimlerle kitapları eşleştirme

Katılım
10 Ocak 2012
Mesajlar
8
Excel Vers. ve Dili
Excel 2007
Merhaba arkadaşlar,bana yardımcı olursanız sevinirim.Gönderdiğim dosyada solda kitap listem var.Üsttede isimlerim.Hangi çocuk hangi kitabı okuduysa kutucuklar olacak ve bastığımda tik olacak.Alttaki sayfa 2 kısmında tik koyduğum ismin kendine ait sayfası olacak ve tik koyduğum kitap otomatik olarak o ismin altına sıralanacak.Yardımcı olursanız çok sevinirim.Daha sonradan kitaplarda ekleyeceğim.Şimdiden çok sağolun.

Ekli dosyayı görüntüle KİTAPLIK 2.xlsx
 
Merhaba,

Aşağıdaki kodlar "ANASAYFA" nın kod bölümünde olmalı.

Öğrenci Ekleyebilirsiniz, kitap ekleyebilirsiniz.
Öğrenci altındaki hücreleri doldurduğunuzda kodlar çalışır.
Her öğrenciye ait sayfa açmanıza gerek yok, sayfa yoksa "Şablon" Sayfasından yeni sayfa oluşturulur öğrenci adıyla.

Kodları deneyiniz.

Kod:
Option Explicit
Public Syf As String

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim i   As Integer
 
    If Target.Column < 3 Or _
        Cells(1, Target.Column) = "" Or _
        Cells(Target.Row, "A") = "" Or _
        Target.Value = "" Then Exit Sub
 
    Syf = Cells(1, Target.Column)
 
    If Not SayfaVarYok(Syf) Then
        Application.ScreenUpdating = False
        Sheets("Şablon").Copy After:=Worksheets(Worksheets.Count)
        ActiveSheet.Name = Syf
        Sheets("ANASAYFA").Select
        Application.ScreenUpdating = True
    End If
 
    Sheets(Syf).Range("A1") = Syf
    i = Sheets(Syf).Cells(Rows.Count, "A").End(3).Row + 1
    With Sheets(Syf)
        .Cells(i, "A") = i - 2
        .Cells(i, "B") = Cells(Target.Row, "B")
    End With
 
End Sub

Kod:
Function SayfaVarYok(Sayfa As String) As Boolean
    On Error Resume Next
    SayfaVarYok = CBool(Len(Worksheets(Sayfa).Name) > 0)
End Function
 

Ekli dosyalar

Tekrar Merhaba,

Herhangi bir yorum gelmedi ama, biz önerimizi yapalım :)

Tüm öğrenciler için sayfa açmak yerine öğrencilerin okuduğu kitapları işaretledikten sonra Şablon sayfasında istediğiniz öğrencinin durumunu listeleyebilirsiniz.

Şablon sayfasında bir adet Combobox ekledim, ordan seçeceğiniz öğrencinin okuduğu kitaplar listelenir.

Kod:
Private Sub ComboBox1_Change()
 
    Dim i   As Integer, _
        j   As Integer, _
        wsa As Worksheet, _
        Bul As Range
    
    Set wsa = Sheets("ANASAYFA")
    
    Range("A1") = ComboBox1.Value
    
    i = Cells(Rows.Count, "A").End(3).Row
    If i < 3 Then i = 3
    Range("A3:B" & i).ClearContents
    
    Set Bul = wsa.Range("1:1").Find(ComboBox1.Value, LookIn:=xlValues, LookAt:=xlWhole)
    If Bul Is Nothing Then Exit Sub
    
    j = 2
    
    For i = 3 To wsa.Cells(Rows.Count, "A").End(3).Row
        If Not wsa.Cells(i, Bul.Column) = "" And Not wsa.Cells(i, "A") = "" Then
            j = j + 1
            Cells(j, "A") = j - 2
            Cells(j, "B") = wsa.Cells(i, "B")
        End If
    Next i
    
End Sub

Kod:
Private Sub Worksheet_Activate()
    Dim i   As Integer
    Dim wsa As Worksheet
    
    Set wsa = Sheets("ANASAYFA")
    
    i = 3
    
    While wsa.Cells(1, i) > ""
        ComboBox1.AddItem wsa.Cells(1, i)
        i = i + 1
    Wend
    
End Sub
 

Ekli dosyalar

Hocam sağolun.Benim söylediğim kutucuklara mesela "b" tıkladığımda tik işareti gelsin.Hocam birde isimleri değiştirdiğimde imleçte isimler aynı kalıyor benim istediğim onlarda değişsin veya sonradan gelen öğrencinin ismini sona eklediğimde onunda ismi gözüksün.Son olarakta kim ne kadar kitap okumuş bunun sayısını sıralayan başka bir sayfa yapabilir miyiz?Bunları nasıl yapabiliriz.Şimdiden teşekkürler...
 
Son düzenleme:
2 ayrı çözüm var, siz hangisinden sözediyorsunuz?
 
2 ayrı çözüm var, siz hangisinden sözediyorsunuz?

Hocam ilginiz için sağolun.2 ayrı çözümden kastınız.Anasayfadaki isimleri değiştirdiğimde yani soyisimlerini eklediğimde 2.sayfadaki imleçteki isimlerinde değişmesini istiyorum.Daha sonra gelen bir öğrencim olduğunda onunda ismi orada yer alsın.Bir diğer konu ise okunan kitap sayısına göre sıralama olsun.Son olarak normalde kutucuklara ne yaparsak yapalım okundu kabul ediyor.Görsellik açısından ben "b" harfine bastığımda orada tik işareti görünsün.İzlenecek yol nedir?Veya yardımcı olur musunuz?
 
2. mesajımda farkıl bir çözüm, 3. mesajımda farklı bir çözüm sundum.

Siz hala istekte bulunuyorsunuz, önce bu çözümlerden hangisini kullanacağınızı söyleyin.

Yukarıda verdiğim dosyalar örnek dosyalardır. Siz öğrencilerin isimlerini önce belirleyeceksiniz sonra kodları kullanacaksınız.

Ben sizi özgür bırakarak kitapları okundu seçerken istediğiniz karakteri rahatlıkla kullanabileceğiniz gibi kodları yazdım. Örneğin siz sadece * karakterini kullanabilirsiniz illa görsüllik olsun istiyorsanız.

Kısaca sizi anlamakta zorlanıyorum. İmleç diyorsunuz, isimler değişmedi diyorsunuz. Diyorsunuzda diyorsunuz ama ben anlamıyorum.
 
Geri
Üst