• DİKKAT

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

Form denetimleri onay kutusu

  • Konbuyu başlatan Konbuyu başlatan cem116
  • Başlangıç tarihi Başlangıç tarihi
Katılım
12 Kasım 2010
Mesajlar
195
Excel Vers. ve Dili
2007 türkçe
iyi akşamlar, bir öğrenci takip sistemi oluşturuyorum ancak puanlanması gereken kriterler var ve bunlar için form denetimlerinden onay kutusunu kullandım. Fakat bu durumda dosyada farklı 10 sayfada toplamda 10.000 i geçen bir onay kutusu kullanmış oldum. Bu durumda da dosyanın ebatı 10 MB ye kadar yükseldi. Bu boyutları düşürme şansım ya da onay kutusunu kullanmadan istediğim şeyi yapma şansım var mı ? Şimdiden teşekkürler :(
 
Öğrenci bilgilerinin bulunduğu sütun aralıkları ile onay kutularınızı örnek bir sayfa üzerinde gösterirseniz, çözüm için daha iyi fikir oluşabilir.
 
Dosya ekleyemiyorum, daha doğrusu mesaj kısmında öyle bir seçenek bulamadım. Üyelik statümle mi ilgili bir durum acaba? aslında dosyayı gönderebilsem bir inceleseniz çok daha iyi olur dediğiniz gibi
 
Merhaba;

Sayfanın kod bölümüne;

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
sat = Target.Row
süt = Target.Column
If süt = 1 And sat >= 2 And sat <= 20 Then
Cancel = True
With Target
.Font.Name = "Wingdings"
.Font.Size = 12
.HorizontalAlignment = xlCenter
End With
If Target.Value = "ü" Then
Target.Value = ""
Else
Target.Value = "ü"
End If
End If
If süt = 3 And sat >= 5 And sat <= 15 Then
Cancel = True
With Target
.Font.Name = "Wingdings"
.Font.Size = 12
.HorizontalAlignment = xlCenter
End With
If Target.Value = "ü" Then
Target.Value = ""
Else
Target.Value = "ü"
End If
End If

End Sub

Kodlarını yerleştirerek 1. sütunda 2 ile 20. satır aralığında , 3. sütunda 5 ile 15. satır aralığında çift tıklayın. (ilk çift tıklamada onay işareti koyar , ikinci çift tıklamada onayı kaldırır.)

İyi çalışmalar.
 
Çok teşekkürler, bu harika oldu. Peki şimdi onay kutusunda olduğu gibi burada da eğersay ile tik işaretine göre ilgili hücreye tıklanmışsa başka bir hücreye istediğim değeri yazdırabilir miyim acaba?
 
İşlem normalde ü harfi koyuyor. Eğer ü harfi varsa değer say şeklinde formülize edebilirsiniz.
 
Öğrenci bilgilerinin bulunduğu sütun aralıkları ile onay kutularınızı örnek bir sayfa üzerinde gösterirseniz, çözüm için daha iyi fikir oluşabilir.

Merhaba;

Sayfanın kod bölümüne;

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
sat = Target.Row
süt = Target.Column
If süt = 1 And sat >= 2 And sat <= 20 Then
Cancel = True
With Target
.Font.Name = "Wingdings"
.Font.Size = 12
.HorizontalAlignment = xlCenter
End With
If Target.Value = "ü" Then
Target.Value = ""
Else
Target.Value = "ü"
End If
End If
If süt = 3 And sat >= 5 And sat <= 15 Then
Cancel = True
With Target
.Font.Name = "Wingdings"
.Font.Size = 12
.HorizontalAlignment = xlCenter
End With
If Target.Value = "ü" Then
Target.Value = ""
Else
Target.Value = "ü"
End If
End If

End Sub

Kodlarını yerleştirerek 1. sütunda 2 ile 20. satır aralığında , 3. sütunda 5 ile 15. satır aralığında çift tıklayın. (ilk çift tıklamada onay işareti koyar , ikinci çift tıklamada onayı kaldırır.)

İyi çalışmalar.

Hocam ne kadar teşekkür etsem azdır. Ama bir sorum daha var. Benim için bu tik koymak kadar önemli olan diğer işlev de diyelim A1 e tik attık, G1 e de örneğin 3 yazdık bu tik işaretinin karşıladığı kriterin puanı olarak. eğer a1 de tik varsa g1 deki değeri h1 e yazsın mesala. yani özetle o tik atılan hücrelerin puansal bir karşılığı olacak ve onları hesaplayacağım. Bunu da çözersek samimi söylüyorum şu destek olan arkadaşlar özelden atsınlar adreslerini yarın kestane şekerlerini kargolayayım :)
 
H hücresine EĞER(A6="ü";G6;"") formülünü ekleyin işleminiz yapılır.
 
H hücresine EĞER(A6="ü";G6;"") formülünü ekleyin işleminiz yapılır.

Ya ben kaç defa denedim bu formülün aynısını biliyor musun :) Ama artık sıyırma noktasına geldiğim bir konuda çözüme ulaşmış olmanın verdiği heyecanla sürekli "ü" yazacağıma tırnak işaretleri olmadan ü yazıyorum. Nerede hata var diye de kafayı yiyorum :D :D :D
Çok teşekkür ederim. Şimdi saat kaça kadar sürerse sürsün şu dosyayı yapmaya başlayacağım. Ve tek ümidim istediğim ebatta ve işlevde bir dosya ile geceyi tamamlamak :D Bu başlık altında destek veren arkadaşlar, hala kestane şekeri teklifim geçerlidir. Hepinize teşekkürler:D
 
Makro ile de. (G sütunu 2 ile 20 satırlar arasına veri girdiğinizde 1. veya 3 sütunda ü harfi (OK işareti) varsa H sütununa değeri atıyor ve H1 e toplamı alıyor.)
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
sat = Target.Row
süt = Target.Column
If süt = 7 And sat >= 2 And sat <= 20 Then
    If Cells(Target.Row, 1) = "ü" Or Cells(Target.Row, 3) = "ü" Then
        Cells(Target.Row, 8) = Cells(Target.Row, 7)
    End If
End If
Cells(1, 8).Value = WorksheetFunction.Sum(Range(Cells(2, 8), Cells(20, 8)))
End Sub
 
Dosyanızı takıldığınız yerde dosyanızı burdan ya da özelden atarsanız cevap veririm. Tabi ki artık sabahleyin.
 
Çift tıklamanın gücü :)
 
Merhaba;

Sayfanın kod bölümüne;

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
sat = Target.Row
süt = Target.Column
If süt = 1 And sat >= 2 And sat <= 20 Then
Cancel = True
With Target
.Font.Name = "Wingdings"
.Font.Size = 12
.HorizontalAlignment = xlCenter
End With
If Target.Value = "ü" Then
Target.Value = ""
Else
Target.Value = "ü"
End If
End If
If süt = 3 And sat >= 5 And sat <= 15 Then
Cancel = True
With Target
.Font.Name = "Wingdings"
.Font.Size = 12
.HorizontalAlignment = xlCenter
End With
If Target.Value = "ü" Then
Target.Value = ""
Else
Target.Value = "ü"
End If
End If

End Sub

Kodlarını yerleştirerek 1. sütunda 2 ile 20. satır aralığında , 3. sütunda 5 ile 15. satır aralığında çift tıklayın. (ilk çift tıklamada onay işareti koyar , ikinci çift tıklamada onayı kaldırır.)

İyi çalışmalar.

Hocam fazla oluyorum biliyorum ama son bir şey sorsam. Şimdi benim bu şekilde doldurmam gereken aralıklar C3 ile L132 arası, yani 10 sütün ve 132 satır. Cden itibaren. Bazı sayfalarda ise öğrenci sayısı az olduğu için daha az sütuna ihtiyacım olacak. Ama satır sayısı hep sabit. Sizin gönderdiğiniz kodu her satır için ayrı ayrı kopyalayıp düzenleyecek miyim yoksa bahsettiğim aralıkları tek bir kodla yazabilir misiniz?
 
Hocam fazla oluyorum biliyorum ama son bir şey sorsam. Şimdi benim bu şekilde doldurmam gereken aralıklar C3 ile L132 arası, yani 10 sütün ve 132 satır. Cden itibaren. Bazı sayfalarda ise öğrenci sayısı az olduğu için daha az sütuna ihtiyacım olacak. Ama satır sayısı hep sabit. Muygun un gönderdiği kodu her satır için ayrı ayrı kopyalayıp düzenleyecek miyim yoksa bahsettiğim aralıkları tek bir kodla yazmak mümkün mü ?
 
Hocam iyi günler, artık sabah dört gözle yazacağınız cevabı beklemek üzere son bir mesaj daha atıyorum. Şöyle ki bahsi geçen tik işaretlerini 24 kişilik sınıflarda 24 sütun ve 132 satıra, 10 kişilik sınıflarda ise 10 sütun ve 132 satıra koyacağız. Dolayısıyla bize örneğin C2 den L132 ye ya da biraz daha geniş bir aralık gerekiyor. Bu durumda bu aralıkları tek bir makroyla nasıl seçebiliriz. Ayrıca excel kitabının yaklaşık 12 sayfası var, her sayfada da bu kodun aynen çalışması gerekiyor. Başka sorum yok, buna vereceğiniz cevap zannediyorum bu sefer gerçekten bu dosya ile olan işimizi sonlandırmış olacak. Şimdiden teşekkürler :)
 
Dosyanızı takıldığınız yerde dosyanızı burdan ya da özelden atarsanız cevap veririm. Tabi ki artık sabahleyin.

Hocam iyi geceler, eğer hala uyanıksanız şimdi,ama değilseniz mecburen artık sabah dört gözle yazacağınız cevabı beklemek üzere son bir mesaj daha atıyorum. Şöyle ki bahsi geçen tik işaretlerini 24 kişilik sınıflarda 24 sütun ve 132 satıra, 10 kişilik sınıflarda ise 10 sütun ve 132 satıra koyacağız. Dolayısıyla bize örneğin C2 den L132 ye ya da biraz daha geniş bir aralık gerekiyor. Bu durumda bu aralıkları tek bir makroyla nasıl seçebiliriz. Ayrıca excel kitabının yaklaşık 12 sayfası var, her sayfada da bu kodun aynen çalışması gerekiyor. Başka sorum yok, buna vereceğiniz cevap zannediyorum bu sefer gerçekten bu dosya ile olan işimizi sonlandırmış olacak. Şimdiden teşekkürler
 
Merhaba;

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
sat = Target.Row
süt = Target.Column
If süt >= 3 And süt <= 12 And sat >= 3 And sat <= 132 Then
Cancel = True
With Target
.Font.Name = "Wingdings"
.Font.Size = 12
.HorizontalAlignment = xlCenter
End With
If Target.Value = "ü" Then
Target.Value = ""
Else
Target.Value = "ü"
End If
End If
End Sub


Bu kodlar C3 : L132 aralığında işlem yapar.

İyi çalışmalar.
 
Çok teşekkür ediyorum, ellerinize sağlık :) iyi geceler :)
 
İyi geceler. Öncelikle hepinize teşekkürler tekrar :) Fakat tabi bir şeyler yaptıkça yeni durumlar söz konusu oluyor. Benim sizlerin engin bilgilerine danışacağım bir husus daha var yaptığım dosya ile ilgili. Şöyle ki, dosyada makroları çalıştırmak için şekil ekleden bazı şekiller ekledim. Bu şekillere de kaydettiğim makroları atadım. Ancak dosyaya girenlerin bu şekillere sağ tıklamasını dolayısıyla değişiklik yapmalarını nasıl engelleyebilirim? Sayfada genel olarak sağ tıklanmasını engelleyecek bir makro kullandım ama bu makro sayfadaki hücrelerde işe yarıyor fakat bahsettiğim şekilleri seçmeyi engellemiyor maalesef. Buna nasıl bir çözüm bulabilirim ?
 
Geri
Üst