Skip to main content

AccessTr.neT


Excel Userform'da Arama Sonucunda Kayıtlı Checkbox Değerleri Formda Görüntülenmiyor.

Oğuz Türkyılmaz
Oğuz Türkyılmaz
22
793

Excel Userform'da Arama Sonucunda Kayıtlı Checkbox Değerleri Formda Görüntülenmiyor.

Çözüldü #1
Merhaba
Excel sayfasına kaydettiğim bilgilerde arama yapıp istediğim kaydı Userform ekranına getirdiğimde tüm check boxlarda işaretler varla yok arası çıkıyor. Haliyle Tikle işaretlenmiş kayıtlarda CheckBoxlarda görüntülenmiyor. Bu durumu nasıl aşabilirim. Teşekkürler.

[Resim: do.php?img=10792]
[Resim: do.php?img=10793]
.rar WİNPERAX.rar (Dosya Boyutu: 93,28 KB | İndirme Sayısı: 4)
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla
#2
[Resim: do.php?img=10794]

Resimdeki gibi deneyiniz.

Visual Basic Code
Function Bosmu(deger) As Byte
    If IsNull(deger) Then
        Bosmu = 0
  Else
        Bosmu = 1
  End If
End Function

Visual Basic Code
Private Sub btn_Arama_Click()

On Error GoTo Bitir
aranan = InputBox("Aramak istediginiz kaydýn ID Numarasini giriniz.", "KAYIT ARAMA")
Range("A:A").Find(aranan).Select
SatirSil = ActiveCell.Row

TextBox_ID.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 1)
TextBox_FirmaAdi.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 2)
TextBox_FirmaUnvani.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 3)
TextBox_YetkiliKisi.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 4)
TextBox_Telefon.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 5)
TextBox_Gsm.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 6)
TextBox_Email.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 7)
TextBox_Adres.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 8)
TextBox_Aciklama.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 9)
ComboBox_Ilce.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 10)
ComboBox_Sehir.Text = Worksheets("Ana_Sayfa").Cells(SatirSil, 11)
ComboBox_Bolge.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 12)
ComboBox_Temsilci.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 13)
ComboBox_RouteDay.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 14)
ComboBox_YetkiliBayilik.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 15)
CheckBox_AlbertGenau.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 16))
CheckBox_AsasPen.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 17))
CheckBox_ByErtTente.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 18))
CheckBox_Karpen.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 19))
CheckBox_OptimalYapi.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 20))
CheckBox_Palmiye.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 21))
CheckBox_Rsg.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 22))
CheckBox_Vizyon.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 23))
CheckBox_Winsa.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 24))
CheckBox_Diger.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 25))
TextBox_Tarih.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 26))
Exit Sub
Bitir: MsgBox "Aranan Kayit Bulunamadi!...", , "Firma Tanýmlama Formu"

End Sub

sizin kodlarda tümünü işaretliyor benimkide onu halledeyim kodu eklerim
Son Düzenleme: 10/03/2021, 11:29, Düzenleyen: feraz.
Cevapla
#3
Kodun son hali bu.Checkbox kodlarındaki gibi herzaman .Value koymazsanız sonuna problemler olabiliyor.

Alttaki koddaki And deger <> "Wahr" olan yeri kaldırabilirsiniz silince çalışırsa benim Pc başka dil olduğu için ekledim.Birde "DOÐRU" bu kelimedeki Ð yerine büyük yumuşak ğ yazın.

Visual Basic Code
Function Bosmu(deger) As Byte
    If deger <> "Evet" And deger <> "DOÐRU" And deger <> "Wahr" Then
        Bosmu = 0
    Else
        Bosmu = 1
    End If
End Function

Visual Basic Code
Private Sub btn_Arama_Click()

On Error GoTo Bitir
aranan = InputBox("Aramak istediginiz kaydýn ID Numarasini giriniz.", "KAYIT ARAMA")
Range("A:A").Find(aranan).Select
SatirSil = ActiveCell.Row

TextBox_ID.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 1)
TextBox_FirmaAdi.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 2)
TextBox_FirmaUnvani.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 3)
TextBox_YetkiliKisi.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 4)
TextBox_Telefon.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 5)
TextBox_Gsm.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 6)
TextBox_Email.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 7)
TextBox_Adres.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 8)
TextBox_Aciklama.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 9)
ComboBox_Ilce.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 10)
ComboBox_Sehir.Text = Worksheets("Ana_Sayfa").Cells(SatirSil, 11)
ComboBox_Bolge.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 12)
ComboBox_Temsilci.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 13)
ComboBox_RouteDay.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 14)
ComboBox_YetkiliBayilik.Value = Worksheets("Ana_Sayfa").Cells(SatirSil, 15)

CheckBox_AlbertGenau.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 16).Value)
CheckBox_AsasPen.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 17).Value)
CheckBox_ByErtTente.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 18).Value)
CheckBox_Karpen.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 19).Value)
CheckBox_OptimalYapi.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 20).Value)
CheckBox_Palmiye.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 21).Value)
CheckBox_Rsg.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 22).Value)
CheckBox_Vizyon.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 23).Value)
CheckBox_Winsa.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 24).Value)
CheckBox_Diger.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 25).Value)
TextBox_Tarih.Value = Bosmu(Worksheets("Ana_Sayfa").Cells(SatirSil, 26).Value)
Exit Sub
Bitir: MsgBox "Aranan Kayit Bulunamadi!...", , "Firma Tanýmlama Formu"

End Sub

(10/03/2021 11:47)feraz Adlı Kullanıcıdan Alıntı: Function Bosmu(deger) As Byte    If deger <> "Evet" And deger <> "DOÐRU" And deger <> "Wahr" Then        Bosmu = 0    Else        Bosmu = 1    End IfEnd Function

Ayrıca checkboxlara gelecek veri sütunları evet yada hayır olacaksa yukardaki kodu alttaki ile değiştirin.

Visual Basic Code
Function Bosmu(deger) As Byte
    If deger <> "Evet" Then
        Bosmu = 0
    Else
        Bosmu = 1
    End If
End Function
Son Düzenleme: 10/03/2021, 11:50, Düzenleyen: feraz.
Cevapla
#4
Son olarak alttaki koduda ekleyeyim.İf kısımlarına eklemeler yapabilirsiniz hücredeki verye göre.

Visual Basic Code
Function Bosmu(deger) As Byte
    ' 0 demek checkboxtaki tik olmayacak 1 se olacak demektir
    If deger = "Evet" Then Bosmu = 0
    If deger = "Hayýr" Then Bosmu = 1
End Function
Cevapla
#5
(10/03/2021 11:59)feraz Adlı Kullanıcıdan Alıntı: Son olarak alttaki koduda ekleyeyim.İf kısımlarına eklemeler yapabilirsiniz hücredeki verye göre.

Visual Basic Code
Function Bosmu(deger) As Byte
    ' 0 demek checkboxtaki tik olmayacak 1 se olacak demektir
    If deger = "Evet" Then Bosmu = 0
    If deger = "Hayýr" Then Bosmu = 1
End Function

Feraz Bey yeni kodlamanızdan sonra arama butonu ile çağırdığımız eski kaydın tarih alanında Tarih Bilgisi 0 olarak geliyor. Bunun dışında kodlar çalışıyor fakat güncelleme yaptığımızda güncelleme koduna checkboxların evet hayır değeri alması için eklediğim if kodlarında hata veriyor. 

[Resim: do.php?img=10795]
[Resim: do.php?img=10796]
.rar WİNPERAX.rar (Dosya Boyutu: 92,85 KB | İndirme Sayısı: 2)
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla
#6
Akşama bakayım abey.
.value yerine .value2 yada .text yazıp deneyiniz.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da