Merhaba,
Bir Form oluşturup Üyelik Sözleşmesi gibi tasarladım.
Geçerli Formu yazdır dediğim zaman ekranda görünen üyeyi değil bütün üyelerin cıktısını alıyor.
Bunu nasıl sadece ekranda görünen üye kayıdının cıktısını al şeklinde düzeltebilirim?
Aşağıdaki bağlantıda cevap işinize yarayabilir
iyi çalışmalar
https://accesstr.net/konu-hizmet-cetveli...#pid159028
aslında en uygun yöntem rapor hazırlayıp, raporu yazıcıya göndermektir.
Yine de makro ile yazdırdığınızı varsayarak şöyle anlatayım:
1 - buton ekleyin
2 - çıkan sihirbazda kayıt işlemleri
3 - kaydı yazdır seçeneğini şeçin
Not: eğer formunuzun genişliği fazla ise 2. sayfaya sarkabilir, daraltırsanız sorun kalmaz
19,5-20 cm iyidir
ayrıca çıktıda görünmesini istemediğiniz metin kutuları ve etiketlerin
-->biçim özellikleri-->Görüntülenme Koşulu=Yalnızca Ekran yaparsanız yazıcıda çıkmazlar
Access e yeniyim. Rapor şeklinde denedim ama bu sefer de mesela üyenin ismi yerine " #ad? " çıkıyor.
bende becerebildiğim kadar ile formda yapayım dedin. Formu dediğiniz gibi 1 sayfaya sıkıştırmayı başardım.
Lakin dediğim gibi bu sefer her üyeye birer Sözleşme çıkarıyor.
Yani ben yeni üye kayıdı yapınca üyenin bilgilerini otomatik sözleşmeye yerleştirip çıktısını almak istiyorum fakat 400 tane üyenin sözleşmesi çıkıyor.
benim buton da kod
-----------------------------------------------------------
Private Sub Komut624_Click()
On Error GoTo Err_Komut624_Click
Dim stDocName As String
Dim MyForm As Form
stDocName = "sözlesme_1"
Set MyForm = Screen.ActiveForm
DoCmd.SelectObject acForm, stDocName, True
DoCmd.PrintOut
DoCmd.SelectObject acForm, MyForm.Name, False
Exit_Komut624_Click:
Exit Sub
Err_Komut624_Click:
MsgBox Err.Description
Resume Exit_Komut624_Click
End Sub
forma kriter göndererek açmayı denediniz mi
kırmızı kısımları ekleyip denemelisiniz
kayıtlarınızın yapısını bilmediğimden üyeyi belirleyen benzersiz alan hangisi onu belirtmenizde fayda var
ama varsayalım ki tablonuzdaki otomatik sayı Kimlik olsun, formdaki kimlik alanının da ismi txtKimlik olsun
Set MyForm = Screen.ActiveForm
myform.filter = "Kimlik= " & myForm.txtKimlik.value
myform.filteron = true
üyeyi belirleyen benzersiz alan burda muhtemelen " üye kayıt no" olur.
sonuçta her üyenin kendine has kayıt nosu var.
ekte iki resim ekledim belki aydınlatı olur.
(10/10/2019, 15:29)midascicero yazdı: Dim stDocName As String
Dim MyForm As Form
stDocName = "sözlesme_1"
Set MyForm = Screen.ActiveForm
DoCmd.SelectObject acForm, stDocName, True
DoCmd.PrintOut
DoCmd.SelectObject acForm, MyForm.Name, False
Merhaba, üstteki kod yerine sadece
DoCmd.RunCommand acCmdSelectRecord
DoCmd.PrintOut acSelection
kodunu dener misiniz?