AccessTr.neT

Tam Versiyon: Liste Kutusu Columun Değerine Göre Formu Açtırma
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2
Arkadaşlar
liste kutusunun columun değerine göre şartlı rapor açtırmak istiyorum. aşağıdaki kodu farklı şekillerde denememe rağmen bir yol uyduramadım buna bakabilirmisiniz.

If IsNull(Izin_Listesi.Column(0)) Or Izin_Listesi.Column(0) = "" Then
MsgBox "Hata"
Exit Sub
Else
If Me.Izin_Listesi.Column(8) = "Yıllık İzin" Then
DoCmd.OpenForm "FrmYillikİzin", acNormal
Else
If Me.Izin_Listesi.Column(8) = "Rapor" Then (buradaki değeri )
DoCmd.OpenForm "FrmRapor", acNormal
Else
End If
End If
End If
Dim rs As New ADODB.Recordset
Dim FrmAdi As String
rs.Open "Tbl_İzinler", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
rs.Find "[idxizin]=" & Me.Izin_Listesi.Value
FrmAdi = "FrmYillikİzin" (BU ALANA yazdırabilirmiyiz)
DoCmd.OpenForm FrmAdi, acNormal ' Form açma kodu
With Forms(FrmAdi)
.idxizin = rs("idxizin")
.TxİzinTarih = rs("İzinTarih")
.TxİzinBaslama = rs("İzinBaslama")
.TxİzinYili = rs("İzinYili")
.TxİzinGun = rs("İzinGun")
.TxİzinYili1 = rs("İzinYili1")
.TxİzinGun1 = rs("İzinGun1")
.TxİzinYol = rs("İzinYol")
.TxHaftaSonu = rs("İzinHaftaSonu")
.TxİzinNot = rs("İzinNot")
.TxİzinAdres = rs("İzinAdres")
.TxPrsId = rs("İzinPrsId")
End With
End Sub

şunu söylemeliyimki ıf şartı değiştikce orada değişecek
Liste kutusuna yeni bir alan ekleyip form adları eklenebilir
hocam liste kutusunda adlar var ben onları FrmAdi kısmına çekmeye çalışıyorum.

yani koşulu sağlayan form adı orada yazsın ki doğru bilgiler doğru formda açılsın.
elseif yada case kodları işinize yarayabilir
maalesef kurguyu oturtamadım kod aşağıda bunu düzenleyebilirmiyiz
Private Sub Izin_Listesi_DblClick(Cancel As Integer)

Dim rs As New ADODB.Recordset
rs.Open "Tbl_İzinler", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
rs.Find "[idxizin]=" & Me.Izin_Listesi.Value
Dim FrmAdi As String
Select Case Izin_Listesi.Column(8)
Case "Yıllık İzin"
FrmAdi = "FrmYillikİzin"
Case "Rapor"
FrmAdi = "FrmRapor"
Case "Mazeret İzni"
FrmAdi = "FrmMazeretİzni"
DoCmd.OpenForm FrmAdi, acNormal ' Form açma kodu
With Forms(FrmAdi)
.idxizin = rs("idxizin")
.TxİzinTarih = rs("İzinTarih")
.TxİzinBaslama = rs("İzinBaslama")
.TxİzinYili = rs("İzinYili")
.TxİzinGun = rs("İzinGun")
.TxİzinYili1 = rs("İzinYili1")
.TxİzinGun1 = rs("İzinGun1")
.TxİzinYol = rs("İzinYol")
.TxHaftaSonu = rs("İzinHaftaSonu")
.TxİzinNot = rs("İzinNot")
.TxİzinAdres = rs("İzinAdres")
'.TxPersonelId = rs("PersonelId")
End With
End Select
End Sub
diğer kodları Case içine yazılmamamlıydı

....
....
Select Case Me.Izin_Listesi.Column(8)
Case "Yıllık İzin"
FrmAdi = "FrmYillikİzin"
Case "Rapor"
FrmAdi = "FrmRapor"
Case "Mazeret İzni"
FrmAdi = "FrmMazeretİzni"
End Select

DoCmd.OpenForm FrmAdi, acNormal
....
....
Sayfalar: 1 2