Currentdb.openrecordset(Sql)

1 2 3 4
18/07/2019, 21:59

zaferlacin

(18/07/2019, 21:53)halily yazdı: bu arada aşağıdaki kodlar da ben de sorunsuz çalıştı
Kod:
Private Sub BtnGeri_Click()
'DoCmd.GoToRecord , , acPrevious
Me.Recordset.MovePrevious
End Sub

Private Sub BtnIleri_Click()
'DoCmd.GoToRecord , , acNext
Me.Recordset.MoveNext
End Sub

Private Sub BtnIlk_Click()
'DoCmd.GoToRecord , , acFirst
Me.Recordset.MoveFirst
End Sub

Private Sub btnSon_Click()
'DoCmd.GoToRecord , , acLast
Me.Recordset.MoveLast
End Sub
hocam formda bir tane isimler adlı tablom var ve formun veri kaynağı
birde resimler diye bir tablom var
isimlerden isim seçip resimlerden o isimdeki Resim yollarını metin kutusuna getirip ileri geri yaparak image göstermek amacım
sizin verdiğiniz kod çalışıyor lakin formun veri kaynağı değişiyor
dosya yükleyemiyorum yükleyebilseydim amacımı daha iyi anlatabilecektim
18/07/2019, 22:12

berduş

cevaplanmışlara taşındığı içi dosya eklenemiyordu
tekrar sorulara taşıdım dosyanızı ekleyebilirsiniz.
18/07/2019, 22:18

zaferlacin

Liste5' e çift tıkladığımda metin1' e isim geliyor
buton75 tıklandığında veri tabanı isme göre set oluyor
ama next olmuyor

resimler tablosu next olacak
18/07/2019, 22:30

berduş

formun neden bir tablo kaynağı olmak zorunda?
sizin formda yapmak istediğiniz ne?
eğer sadece seçtiğiniz isme göre resimler arasında dolaşmaksa formun kaynağının değiştirilmesinde sorun yok, değiştirip resimler arasında dolaşırsınız , hatta isterseniz metin1 boşken "isim" tablosundaki tüm kayıtları, dolu olduğunda "resimler" tablosundaki kritere uyan kayıtları getirir
18/07/2019, 22:43

zaferlacin

formun sağ tarafında çerceve var altında resim metin kutusu ve resim aç butonu ile ileri geri butonları
liste136 yı çift tıklayınca kayıtlı ev bilgileri gelecek ve sağ tarafta resim aç butonuna basınca o kayda ait resimler gelecek
kayıt seçili iken resimleri ileri geri yapabileceğim 
formun veri kaynağı olmadan nasıl olur yada bilemedim
19/07/2019, 12:34

berduş

ben eski dosyanız üzerinden yaptım siz yeni dosyanıza uyarlarsınız.
öncelikle formun en üstüne "Option Compare Database"nin hemen altına tüm formda kullanabileceğimiz 2 değişken tanımladık
-modül eklerseniz her formda kullanılabilir-
Option Compare Database '<==bu satır zaten eklidir siz alttaki 2 taneyi ekleyeceksiniz
Dim txtSql As String
Public rsResim As dao.Recordset
sonra yeni bir prosedür tanımlayacağız -Aslında tanımlamamıza gerek yokmuş ben bir yerde hata yaptığım için çalışmadığından ayrı prosedür olarak yazmıştım
isterseniz prosedürün içindeki kodları, "SqlResim (txtSql)"yi silip yerine yazabilirsiniz -
Public Sub SqlResim(txtSql As String)
Set rsResim = CurrentDb.OpenRecordset(txtSql)
rsResim.MoveLast
rsResim.MoveFirst
End Sub
"Sub Komut75_Click()" butonun kodunu aşağıdaki kodla değiştirin
txtSql = "Select * from resimler where adi='" & CStr(Me.Metin1.Value) & "'"
SqlResim (txtSql)

Me.Liste5.RowSource = txtSql
Me.Metin2 = rsResim.Fields("resim_yol")
geriye kalanlar da ilk/son/ileri/geri komutları
Private Sub BtnGeri_Click()
If rsResim.AbsolutePosition = 0 Then Exit Sub 'ilk kayıt kontrolu
rsResim.MovePrevious
Me.Metin2 = rsResim.Fields("resim_yol")
End Sub

Private Sub BtnIleri_Click()
If rsResim.AbsolutePosition = rsResim.RecordCount - 1 Then Exit Sub 'son kayıt kontrolü
rsResim.MoveNext
Me.Metin2 = rsResim.Fields("resim_yol")
End Sub

Private Sub BtnIlk_Click()
rsResim.MoveFirst
Me.Metin2 = rsResim.Fields("resim_yol")
End Sub

Private Sub btnSon_Click()
rsResim.MoveLast
Me.Metin2 = rsResim.Fields("resim_yol")
End Sub
[attachment=30466]
1 2 3 4