Acceste Güncelleme Yaparken Hata

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhabalar, kod Accesteki veriyi güncellemeye çalışıyorum ama bir türlü başaramadım. Öge, istenen ad veya sıra sayısı ile ilişik derleme içinde bulunamıyor hatası alıyorum.

Kod:
Private Sub CommandButton5_Click()

Dim baglan As New Connection
    Dim rs As New Recordset
    Dim dbPath As String

    dbPath = ThisWorkbook.Path & "\DB.accdb"
    baglan.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & dbPath
    rs.Open "SELECT * FROM personelliste WHERE Kimlik =" & Me.TextBox15.Value, baglan, adOpenKeyset, adLockPessimistic
      
        rs.Update 8, Me.TextBox9.Text
        
    rs.Close
    Set rs = Nothing
    baglan.Close
    Set baglan = Nothing
    
    Call TakipliPersonelKendiSayfasi
End Sub
 
Katılım
2 Temmuz 2014
Mesajlar
145
Excel Vers. ve Dili
2021 Türkçe, 64bit
kodda bir hata görmedim, örnek çalışmamda denediğimde hata vermedi
tablonuzda kaç alan var?
kaçıncı alanı güncellemeye çalışıyorsunuz?
alan sırası 0'dan başlar o neden eğer tablonuzda 8 alan varsa alanlar; 0,1,2,....6,7 şeklinde ilerler.
8. alanı güncellemek için ;
rs.Update 7, Me.TextBox9.Text yazılmalı
 

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
Halil hocam günaydınlariniz olsun. Dün gece artık gözüm ne kadar yorulduysa tablo ismini yanlış yazmışım sabah sizin mesajınızdan sonra farkettim. İlginiz için çok teşekkür ederim.

Sizden bir şey öğrenmek istiyorum.

TextBox1'e yazdığım değeri ListBox1'de dinamik olarak nasıl sorgulayabilirim hocam. Örneğin TB1'e "2" yazdığımda "2" icerenleri listelesin gibi. Müsait olursanız yardımcı olabilir misiniz
 

Astalavista58

Altın Üye
Katılım
20 Ocak 2020
Mesajlar
242
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
20-02-2025
Veri tabanim yine Acces
 
Katılım
2 Temmuz 2014
Mesajlar
145
Excel Vers. ve Dili
2021 Türkçe, 64bit
tam olarak anlamadım ama anladığım kadarıyla:
ListBox1 verileri nereden alıyor?
eğer recordsetten ise rekordsetin sorgu koduna ilgili koşul eklenebilir
yada
listbox1'in değeri arasında dolaşılıp içinde 2 geçmeyenler ListBox1.RemoveItem (x) ile silinebilir
Kod:
    For x = ListBox1.ListCount - 1 To 0 Step -1
       If Not ListBox1.List(x) Like "*2*" Then ListBox1.RemoveItem (x)
    Next
sisteminizin nasıl işlediğini bilemeden öneriler havada kalır
Not: forum sisteminin işleyişi açısından: her soru için yeni konu açmanız daha doğru olur
 
Son düzenleme:
Üst