• DİKKAT

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

İki şarta uyan veri girişi

Hakan ERDOST

Destek Ekibi
Destek Ekibi
Katılım
12 Eylül 2004
Mesajlar
885
Excel Vers. ve Dili
Excel 2019 Türkçe (Ev)
Excel 2013 Türkçe (Okul)
Kod:
Private Sub CommandButton1_Click()
Dim bak As Range
    Dim say As Integer
        For Each bak In Range("b1:b" & WorksheetFunction.CountA(Range("b1:b65000")))
        If bak.Value = ComboBox1.Value Then
            MsgBox ""
        Exit Sub
        End If
    Next bak

For Each bak In Range("c2:c" & WorksheetFunction.CountA(Range("c2:c65000")))
If bak.Value = ComboBox2.Value Then
MsgBox "Bu öğrenci bu kitabı daha önce almış."
Exit Sub
End If
    Next bak
If Range("A2").Value = "" Then
Range("A2").Select
ActiveCell.Value = 1
ActiveCell.Offset(0, 1) = ComboBox1
ActiveCell.Offset(0, 2) = ComboBox2
ActiveCell.Offset(0, 3) = ComboBox3
ActiveCell.Offset(0, 4) = TextBox1
ActiveCell.Offset(0, 5) = TextBox2
ActiveCell.Offset(0, 6) = TextBox3


Else
[A65536].End(xlUp).Offset(1, 0).Select
ActiveCell = ActiveCell.Offset(-1, 0) + 1
ActiveCell.Offset(0, 1) = ComboBox1
ActiveCell.Offset(0, 2) = ComboBox2
ActiveCell.Offset(0, 3) = ComboBox3
ActiveCell.Offset(0, 4) = TextBox1
ActiveCell.Offset(0, 5) = TextBox2
ActiveCell.Offset(0, 6) = TextBox3
End If

ComboBox1 = ""
ComboBox2 = ""
ComboBox3 = ""
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""




End Sub
Herkese merhaba iki ComboBox daki seçime göre veri kaydı yapıyorum.Birinci comboda öğrenci adı soyadı ikinci comboda okunan kitap.Kayıt sırasında eğer çocuk ve kitap birlikte eşleşirse daha önce kitabı okudu uyarısı ile kaydın engellenmesi için makrode nasıl bir değişiklik yapmalyım.
 
Merhaba.

Bu haliyle, denemeler yapabilmek için;
öngördüğünüz nesneleri içeren belge oluşturmak ve rastgele veriler eklemek gerekiyor.

Keşke nesnelerin ve az da olsa örnek verilerin olduğu örnek belge ekleseydiniz.
.
 
Merhaba.

Bu haliyle, denemeler yapabilmek için;
öngördüğünüz nesneleri içeren belge oluşturmak ve rastgele veriler eklemek gerekiyor.

Keşke nesnelerin ve az da olsa örnek verilerin olduğu örnek belge ekleseydiniz.
.

Dosya ekte Üstad.
 

Ekli dosyalar

Kod:
Private Sub CommandButton1_Click()
Dim x As Boolean
x = False
For i = 1 To Sheets("OKUMA").Cells(65536, 1).End(xlUp).Row
    If ComboBox1.Text = Sheets("OKUMA").Cells(i, 2) And ComboBox2.Text = Sheets("OKUMA").Cells(i, 3) Then
        x = True
        MsgBox ("Öğrenci Kitabı daha önce okumuş!")
        Exit For
    End If
Next i
If x = False Then
    Sheets("OKUMA").Cells(i, 2) = ComboBox1
    Sheets("OKUMA").Cells(i, 3) = ComboBox2
If Range("A2").Value = "" Then
Range("A2").Select
ActiveCell.Value = 1
ActiveCell.Offset(0, 1) = ComboBox1
ActiveCell.Offset(0, 2) = ComboBox2
ActiveCell.Offset(0, 3) = ComboBox3
ActiveCell.Offset(0, 4) = TextBox1
ActiveCell.Offset(0, 5) = TextBox2
ActiveCell.Offset(0, 6) = TextBox3


Else
[A65536].End(xlUp).Offset(1, 0).Select
ActiveCell = ActiveCell.Offset(-1, 0) + 1
ActiveCell.Offset(0, 1) = ComboBox1
ActiveCell.Offset(0, 2) = ComboBox2
ActiveCell.Offset(0, 3) = ComboBox3
ActiveCell.Offset(0, 4) = TextBox1
ActiveCell.Offset(0, 5) = TextBox2
ActiveCell.Offset(0, 6) = TextBox3
End If

ComboBox1 = ""
ComboBox2 = ""
ComboBox3 = ""
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""

End If
End Sub
Sorun çözüldü.Çözüm makrosu birilerine yararı olur umarım...
 
Buyurun.
Kod:
 For Each bak In Range("b1:b" & Range("b" & Rows.Count).End(3).Row)
 If Cells(bak.Row, "B") = ComboBox1 And Cells(bak.Row, "C") = ComboBox2 Then
 MsgBox ComboBox1 & " Adındaki kişi " & ComboBox2 & " Kitabı Önce okumuştur"
 Exit Sub
 End If
 Next

Gerçi çözüm bulunmuş. Alternatif olsun.
 
Merhaba.

Çözüm bulunmuş ama belge, userform ve kod'larda değişiklikler yaparak hazırlamıştım.
Alternatif olsun.

Ayrıca, kitap bazında rapor almayı düşünürseniz;
kitapların hangi öğrencilere verildiğinin izlenebileceği ilaveler yaptım.
(VERİ sayfası F sütunundan itibaren, kitabın verildiği öğrenci numaraları kaydediliyor)
Belki işinize yarar. Ekteki belge yenilendi ( 23.02.2017 22:38 )
.
 

Ekli dosyalar

Merhaba.

Çözüm bulunmuş ama belge, userform ve kod'larda değişiklikler yaparak hazırlamıştım.
Alternatif olsun.

Ayrıca, kitap bazında rapor almayı düşünürseniz;
kitapların hangi öğrencilere verildiğinin izlenebileceği ilaveler yaptım.
(VERİ sayfası F sütunundan itibaren, kitabın verildiği öğrenci numaraları kaydediliyor)
Belki işinize yarar.
.

Sayın Ömer BARAN ilginize ve emeğiniz için çok teşekkürler. UserForm1'in üzerine bir label ilavesi ile öğrencinin okuduğu kitap sayfasını toplatabilir miyiz?
 
Sayın Ömer BARAN ilginize ve emeğiniz için çok teşekkürler. UserForm1'in üzerine bir label ilavesi ile öğrencinin okuduğu kitap sayfasını toplatabilir miyiz?
Tekrar merhaba.

Mesajınızı şimdi gördüm ama bilgisayar başından bir süre kalkmam gerek, isteğiniz halledilebilir sanırım.
Akşama olumlu/olumsuz cevap yazarım.

Kolay gelsin.
.
 
Teşekkürler Ömer bey.Katkılarınızın çok faydası oldu.
 
Geri
Üst