• DİKKAT

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

userform

emrebengul

Altın Üye
Katılım
5 Aralık 2015
Mesajlar
304
Excel Vers. ve Dili
Excel Vers. ve Dili Ofis 2019 TR 32 Bit
Farklı Kişilere aynı kitabı verme sıkıntısı oluyor. istediğim şey bir kişinin aldığı kitabı farklı bir kişi aldığında hata versin ama yapamadım
Ekli dosyayı görüntüle KAYITLAR.rar
 
Merhabalar, dosyanızı inceleyip yardımcı olabilmeye çalışmak adına,

alternatif bir dosya yükleme sitesine upload edip linki paylaşırsanız, bakalım.
 
Gönderdiğiniz dosyada ne yapmak istediğiniz çok net değil. Bir miktar açıklama lütfen.

Verilen kitaplar sayfa3 'te mi takip ediliyor ? Bir de kontroller kitap ismine göre mi, yoksa taşınır no'ya göre mi kontrolü daha uygun olur.
 
Sayfa3'te kime ne verdiysem onlar çıkıyor. aynen öyle sayfa 3'te takip ediliyor. taşınır noya göre daha uygun olur. Şimdi benim istediğim 1 kitap sadece 1 kişiye verilsin 1den fazla kişiye verilmesin. Birde şu sorun var orada baktıysanız adem ismi kayıtlı olmasına rağmen kitap vermek istediğimde ismi çıkmıyor. Ve 2 kayıt olduğunda sadece 2 kitap görünüyor diğerleri görünmüyor. bunları nasıl çözebiliriz
 
Samsun'da kızım okuması ve Samsun'u çok beğenmem hasebiyle soruya özel bir ilgim oldu doğrusu :)

Sorunlarınızı tek tek hallederiz inşallah. Üstteki mesajınızı siz yazarken bende çözüm için uğraşıyordum.

Taşınır no'ya göre değil de, kitap ismine göre ayarlamıştım. Siz aşağıdaki şekilde bir deneyin.

3 nolu formda bulunan "kitap teslim et" butonu altındaki koda aşağıdaki belirtilen yeri ekleyiniz.


Kod:
Private Sub CommandButton1_Click()

Dim Mutlu As Long, Say As Byte
Dim MSTF, a
    If ComboBox1.Text = Empty Then
    MsgBox "Lütfen Öğrenci No Giriniz", vbExclamation, "ÜNYE EL ELE +90 452 333 60 77"
    Exit Sub
    End If
    If ComboBox5.Text = Empty Then
    MsgBox "Lütfen Taşınır No Giriniz", vbExclamation, "ÜNYE EL ELE +90 452 333 60 77"
    Exit Sub
    End If
    If ComboBox16.Text = Empty Then
    MsgBox "Lütfen Ödünç Aldığı Tarihi Giriniz", vbExclamation, "ÜNYE EL ELE +90 452 333 60 77"
    Exit Sub
    End If
    If ComboBox17.Text = Empty Then
    MsgBox "Lütfen İade Etmesi Gereken Tarihi Giriniz", vbExclamation, "ÜNYE EL ELE +90 452 333 60 77"
    Exit Sub
    End If
    
[COLOR="Red"]For a = 2 To [G65536].End(xlUp).Row
If ComboBox6.Value = Cells(a, 7).Value Then
MsgBox "Bu kitap " & Cells(a, 3) & " " & Cells(a, 4) & " isimli öğrenciye verilmiştir. Başka bir kitap seçiniz."
Exit Sub
End If
Exit For
Next a[/COLOR]


MSTF = [Sayfa3!AC1]
On Error Resume Next
Mutlu = Range("B65536").End(3).Row + 1
Cells(Mutlu, "B") = ComboBox1.Text
Cells(Mutlu, "C") = ComboBox2.Text
Cells(Mutlu, "D") = ComboBox3.Text
Cells(Mutlu, "E") = ComboBox4.Text
Cells(Mutlu, "F") = ComboBox5.Text
Cells(Mutlu, "G") = ComboBox6.Text
Cells(Mutlu, "H") = ComboBox7.Text
Cells(Mutlu, "I") = ComboBox8.Text
Cells(Mutlu, "J") = ComboBox9.Text
Cells(Mutlu, "K") = ComboBox10.Text
Cells(Mutlu, "L") = ComboBox11.Text
Cells(Mutlu, "M") = ComboBox12.Text
Cells(Mutlu, "N") = ComboBox13.Text
Cells(Mutlu, "O") = ComboBox14.Text
Cells(Mutlu, "P") = ComboBox15.Text
Cells(Mutlu, "Q") = ComboBox16.Text
Cells(Mutlu, "R") = ComboBox17.Text

        Range("B2:S65000").Select
    Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    Range("A1").Select
MsgBox MSTF & "  Nolu Öğrenci ye Kitap Teslimatı Yapılmıştır.", vbInformation, "ÜNYE EL ELE +90 452 333 60 77"
        Dim Nesne As Control
    For Each Nesne In Controls
        Select Case TypeName(Nesne)
            Case "TextBox", "ComboBox"
                Nesne = ""
        End Select
    Next
    Unload Me
    UserForm3.Show
End Sub
 
İlginç bir form yapınız olmuş. Textbox yerine comboboxlar kullanmışsınız. Label nesnelerinin ismini de hücrelerden aldırmışsınız. İlginç olmuş doğrusu. Farklı bir form ve kod yapısı kullanılabilirmiş. Tabi her yiğidin yoğurt yemesi farklı. 2. probleminiz ile ilgili bir bakayım. Dönüş yaparım inşallah. (Bulunduğum oda biraz soğuk ta :) )
 
hata veriyor
 
1. Ne hatası veriyor, ki bende vermedi.

2. Bir de combobox_click kodlarınızı iptal edip
Combobox_Change kodlarını ilave ediniz.

Kod:
Private Sub ComboBox1_Change()
On Error GoTo Hata
Application.ScreenUpdating = False
Sheets(2).Select
Columns(2).Find(ComboBox1).Select
ComboBox2 = ActiveCell.Offset(0, 1)
ComboBox3 = ActiveCell.Offset(0, 2)
ComboBox4 = ActiveCell.Offset(0, 3)
Sheets(3).Select
Exit Sub
Hata:
MsgBox "Girdiğiniz numara ile ilgili bir kayıt yoktur"
ComboBox1 = ""
Application.ScreenUpdating = True
End Sub
 
ilk gönderdiğiniz kodlar ne ile ilgiliydi onu yaptığımda 2 kişiye aynı kitabı verdiğim de devam ediyor ama kitap teslim al dediğimde hata veriyor
 
Elinize sağlık çok iyi oldu. başka sorularımda var kusura bakmayın. Örneğin tarihleri yazıyoruz ya tarihin günü geldiğinde hata bana msgbox ile bildirse çok iyi olur
 
ve son olarakta öğrencilerden 2 kişi olduğu 2 tane kitap çıkıyor hepsi çıkmıyor onu nasıl çözebiliriz
 
Teslim süresi gelen kitaplar için, zaman kontrollü bir kod yazılabilir ama bence çok mantıklı değil. Bunun yerine form üzerine yine 1 buton koyularak, süresi gelen veya süresi geçen kitapları bana göster diyebiliriz. Yalnız bir miktar işim var. Sonrasında sizin için bir şeyler ayarlarız inşallah.
 
Ölümden başka herşeye çare bulunur inşallah. Biraz zaman tanıyın, bir miktar işim var. Sonrasında isteklerinize tek tek bakarız inşallah.
 
o zaman sabaha kadar beklerim sizi gerçekten ben yeterki yardımcı olun
 
ya ben şu soruyu sormayı unuttum bu sayfa 2de okuduğu kitaplar bölümü var fark ettiyseniz acaba oraya ismin karşılığına okuduğu kitapları atabiliyormuyuz ben baya zahmetli oldum kusura bakmayın
 
Geri
Üst