Skip to main content

AccessTr.neT


Liste Kutusu Columun Değerine Göre Formu Açtırma

Liste Kutusu Columun Değerine Göre Formu Açtırma

Çözüldü #1
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
Cevapla
#2
Liste kutusuna yeni bir alan ekleyip form adları eklenebilir
Cevapla
#3
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.
Son Düzenleme: 07/03/2021, 23:43, Düzenleyen: yahzee_61.
Cevapla
#4
elseif yada case kodları işinize yarayabilir
Cevapla
#5
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
Cevapla
#6
diğer kodları Case içine yazılmamamlıydı
Visual Basic Code
....
....
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 
....
....
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da