Formunuza ekleyeceğniz
Private Sub Komut213_Click()
Call Filtrele(Me.ActiveControl.Caption) 'Filtre prosedürüne butonun captionını kriter olarak gönderip sorguyu filtreler
End Sub
Private Sub Komut214_Click()
Call Filtrele(Me.ActiveControl.Caption)
End Sub
'......
'......
'diğer vinç butonları
'......
'......
Sub Filtrele(VincNo As String)
Dim strSQL As String
Dim qdf As DAO.QueryDef
Dim db As DAO.Database
Set db = CurrentDb()
'_#__ Genel sorgu oluştur / güncelle
On Error Resume Next
Set qdf = db.QueryDefs("qryVincler")
On Error GoTo 0
strSQL = "SELECT plan.*, plan.[VİNÇ NO] " & _
"FROM plan " & _
"WHERE plan.[VİNÇ NO] = '" & VincNo & "';"
If qdf Is Nothing Then
'_1__Sorgu yoksa oluştur
Set qdf = db.CreateQueryDef("qryVincler", strSQL)
Else
'_2__ Sorgu varsa güncelle
qdf.SQL = strSQL
End If
'_3__Sorguyu görüntüle
DoCmd.OpenQuery "qryVincler"
Set qdf = Nothing
Set db = Nothing
End Sub
benzeri kod ile vinç no bazında filtreleme yapabileceğiniz bir prosedür tanımlayarak, her bir vinç butonunun captionını (yani vinç nosunu) filtreleme kriteri olarak kullanıp sorgu sonuçlarını listeleyebilir ve/veya tasarlayacağınız forma yükleyebilirsiniz. Sorguyu ihtiyacınız doğrultusunda güncelleyebilirsiniz ben örnek olması açısından tüm alanları sorguladım. Örnek dosya da ekte inceleyin.Ancak daha düzenli çalışın. Kullandığınız denetimleri, değişkenleri, tablo vs. uygun şekilde adlandırmanız kodlama, revizyon ve ilerleyen dönemde bakımlar açısından önrm arz eder. Ayrıca Yapılmaması Gereken Ölümcül Hatalar başlıklı konuyu da mutlaka inceleyin.