• DİKKAT

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

Nesne Kapalı Hatası

Katılım
9 Kasım 2015
Mesajlar
40
Excel Vers. ve Dili
2016 Türkçe
Merhaba,

Aşağıdaki kodu çalıştırdığım zaman "Run time error 3704: Nesne kapalı olduğundan işleme izin verilmez" hatasını almaktayım. Forumda bulduklarımı denedim ancak ne yaptıysam çözülmedi.

Ayrıca 64 bit işletim sistemi kullandığımdan bazı nesneler (örn: listview) kayıp durumda ondan kaynaklandığını düşünmeye başladım. Ocx register yaptım ancak o problemi de çözemedim.

Yardımınızı rica ederim, teşekkürler.


Private Sub CommandButton4_Click()
Dim Con As Object, Rs As Object, ekle As String
Set Con = CreateObject("Adodb.Connection")
Set Rs = CreateObject("Adodb.RecordSet")
Con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
ThisWorkbook.Path & "\gelirgider.accdb"
ekle = "select * from tblgelirgider"
Set Rs = CreateObject("Adodb.Connection")
Rs.Open ekle, Con, 1, 3
Rs.AddNew
Rs("tarih") = TextBox1.Text
Rs("gelir") = TextBox2.Text
Rs("gider") = TextBox3.Text
Rs.Update
Rs.Close

TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
End Sub
 

Ekli dosyalar

?

Kod:
With rs
    .Open ekle, Con, 1, 3
    .AddNew
    .Fields("tarih") = TextBox1.Text
    .Fields("gelir") = TextBox2.Text
    .Fields("gider") = TextBox3.Text
    .Update
    .Close
End With
 
Kod:
 Set Rs = CreateObject("Adodb.Connection")]
satırı fazla/yanlış gibi geldi bana, Rs'yi yukarısındaki satırlarda RecordSet tanımlamışsınız, sonra gereksiz yere tekrardan Connection olarak tanımlamışsınız. Bu satırı silip deneyin.
 
Son düzenleme:
Kod:
 Set Rs = CreateObject("Adodb.Connection")]
satırı fazla/yanlış gibi geldi bana, Rs'yi yukarısındaki satırlarda RecordSet tanımlamışsınız, sonra gereksiz yere tekrardan Connection olarak tanımlamışsınız. Bu satırı silip deneyin.

Denedim aynı hatayı alıyorum.

Hata rs.addnew üzerinden geliyor.
 
Problem çözülmüştür.

Anladığım kadarıyla accessdeki veri tipiyle uyuşmadığı için hata vermiş. If kontrolü ile sorun giderildi.

Teşekkürler.
 
Geri
Üst