(10/06/2023, 13:45)berduş yazdı: [ -> ]eğer mutipage eklerseniz aşağıdaki kod işinize yarayabilir
not unutmayın! multipage ile sekme tam olarak aynı şey değiller
eğer multipage adı xMultiPage ise
Me.xMultiPage.Pages.Add
(10/06/2023, 13:24)vetaltan yazdı: [ -> ]ir tablodan sekme sayısını alarak o sayıda sayfa oluşturmak
dosyanızı ekleyip gerekli açıklamayı yaparsanız ona göre çözüm önerebiliriz
Merhaba sayın Berduş,
Geçen hafta şehir dışında olduğum için gecikmeli cevap veriyorum,özür dilerim.
Örnek bir vt yarattım (sekme denetimi) ,Form1 ile açıp ,kaçtane metin kutusuna girdiğimiz sayı kadar, sekme denetimi olan form açmak istiyorum.
komut 1 olayının kodunu aşağıdaki gbi düzenleyebilirsiniz?
temel mantık
- sekme eklenecek form tasarım modunda açılıyor
- sekme nesnesinin içinde kaç sayfa olduğuna bakılıyor
- döngü ile sayfa ekleniyor
Private Sub Komut1_Click()
Dim a
a = Val(Me.kactane & "")
frmName = "sekmedenetimi"
DoCmd.OpenForm FormName:=frmName, View:=acDesign
Set frm = Forms(frmName)
Set tbc = frm.Controls("TabCtl0")
bas = tbc.Pages.Count + 1 'sekme nesnesindeki sayfa sayısını bulup 1 ekliyor
For x = bas To a
tbc.Pages.Add
Next
AddPage = True
DoCmd.OpenForm FormName:=frm.Name
DoCmd.Close acForm, Me.Name, acSaveNo ' bu kod bu formu kendi kendini kaydetmeden kapatır
End Sub
(13/06/2023, 17:07)berduş yazdı: [ -> ]komut 1 olayının kodunu aşağıdaki gbi düzenleyebilirsiniz?
temel mantık - sekme eklenecek form tasarım modunda açılıyor
- sekme nesnesinin içinde kaç sayfa olduğuna bakılıyor
- döngü ile sayfa ekleniyor
Private Sub Komut1_Click()
Dim a
a = Val(Me.kactane & "")
frmName = "sekmedenetimi"
DoCmd.OpenForm FormName:=frmName, View:=acDesign
Set frm = Forms(frmName)
Set tbc = frm.Controls("TabCtl0")
bas = tbc.Pages.Count + 1 'sekme nesnesindeki sayfa sayısını bulup 1 ekliyor
For x = bas To a
tbc.Pages.Add
Next
AddPage = True
DoCmd.OpenForm FormName:=frm.Name
DoCmd.Close acForm, Me.Name, acSaveNo ' bu kod bu formu kendi kendini kaydetmeden kapatır
End Sub
Sayın Berduş,
Tam istediğim gibi, ellerinize sağlık, çok teşekkür ederim.
rica ederim
iyi çalışmalar)
ufak bir hatırlatma: tasarım modunda değişiklik yapıldığında formu kapatmadan önce "değişiklikler kaydedilsin mi?" benzeri bir uyarı mesajı çıkar
yanlışlıkla evet derseniz form gelecek sefer o sayıda sekme ile açılır yani eğer açılması gerekenden fazla sayfa varsa bu durumda silme işlemi de yapılabilmeli
(13/06/2023, 17:27)berduş yazdı: [ -> ]rica ederim
iyi çalışmalar)
ufak bir hatırlatma: tasarım modunda değişiklik yapıldığında formu kapatmadan önce "değişiklikler kaydedilsin mi?" benzeri bir uyarı mesajı çıkar
yanlışlıkla evet derseniz form gelecek sefer o sayıda sekme ile açılır yani eğer açılması gerekenden fazla sayfa varsa bu durumda silme işlemi de yapılabilmeli
Sayın Berduş,
Uyarınız için teşekkürler.
Yanlışlıkla kaydetme problemine karşı aşağıdaki kodu uyguladım, gayet güzel çalışıyor.
Kod:
Private Sub Komut1_Click()
Dim a
a = Val(Me.kactane & "")
frmName = "sekmedenetimi"
DoCmd.OpenForm FormName:=frmName, View:=acDesign
Set frm = Forms(frmName)
Set tbc = frm.Controls("TabCtl0")
bas = tbc.Pages.Count + 1 'sekme nesnesindeki sayfa sayısını bulup 1 ekliyor
az = tbc.Pages.Count - 1
If bas <= a Then
For x = bas To a
tbc.Pages.Add
Next
AddPage = True
DoCmd.OpenForm FormName:=frm.Name
DoCmd.Close acForm, Me.Name, acSaveNo ' bu kod bu formu form1'i kapatır
ElseIf bas > a Then
For x = a To az
tbc.Pages.Remove
Next
AddPage = True
DoCmd.OpenForm FormName:=frm.Name
DoCmd.Close acForm, Me.Name, acSaveNo ' bu kod bu formu form1'i kapatır
End If
End Sub
Çözümü paylaştığınız için teşekkürler)