sayfadan multipageli userforma geçiş

Katılım
11 Ocak 2006
Mesajlar
324
Değerli Hocalarım
Ekteki örnekte;sayfa1 deki düğmeye tıklayınca sayfa1 ile ilişkili page1'e,
sayfa2 ddeki düğmeye tıklayınca page2'li userforma geçiş olmuyor.Önceden
hangi page ile kayıt edilmiş ise o pageli userforma geçiş olmakta.Sayfa ile
ilişkili pageye geçmek için yardımcı olursanız memnun olurum.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Buyurun efendim dosyanız.:cool:
 
Katılım
11 Ocak 2006
Mesajlar
324
sn.hocam Evren Gizlen
Cevap verdiğniz için çok çok teşekkür edrim.Fakat kendi
çalışmamda error verdi.İnitialize de userformun ekranı kaplama
makrosu mevcut.Bu konuda ceap verceğinizi umarak iyi çalışmalar
dilerim.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Userformun Initialize olayında kodu şöyle kullanın.:cool:
Birde ,Nesnenin adı MultiPage1'mi properties'ten name kutusuna bakarak kontrol ediniz.
Kod:
Private Sub UserForm_Initialize()
[B][COLOR="Red"]On Error Resume Next
me.MultiPage1.Value = ActiveSheet.Index - 1[/COLOR][/B]
End Sub
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu şekilde deneyiniz.
Kod:
Sub Düğme1_Tıklat()
UserForm1.Show 0
UserForm1.MultiPage1.Value = 0
End Sub

Sub Düğme2_Tıklat()
UserForm1.Show 0
UserForm1.MultiPage1.Value = 1
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Hayır , kodlar bende gayet iyi çalışıyor.
Sanırım arkadaşın Userformun adı Userform1 değil veya Multipage'nin adı Multipage1 değil.
Ben Userform1 yerine me. şeklinde kodları düzelttim.Sanırım şimdi çalışacaktır.:cool:
 
Katılım
11 Ocak 2006
Mesajlar
324
sn.hocam Evren Gizlen
yine error verdi.
sub Auto_open()
UserForm1.Show
End Sub

ve
Private Sub UserForm_Initialize()
Dim X1 As Long, Y1 As Long, Y2 As Long, X2 As Long
Dim CX As Double, CY As Double
Dim MyCtrl As Control
X1 = Application.Width
Y1 = Application.Height
X2 = Me.Width
Y2 = Me.Height
CX = X1 / X2
CY = Y1 / Y2
Me.Width = X1
Me.Height = Y1
For Each MyCtrl In Me.Controls
MyCtrl.Top = MyCtrl.Top * CY
MyCtrl.Left = MyCtrl.Left * CX
MyCtrl.Width = MyCtrl.Width * CX
MyCtrl.Height = MyCtrl.Height * CY
On Error Resume Next
MyCtrl.Font.Size = MyCtrl.Font.Size * CY
On Error GoTo 0
Next

End Sub

makroları mecut.multipage1 name=page1 olarak var.İyi
çalışmalar.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Kırmızı satırı ekleyip deneyiniz.:cool:
Kod:
Private Sub UserForm_Initialize()
Dim X1 As Long, Y1 As Long, Y2 As Long, X2 As Long
Dim CX As Double, CY As Double
Dim MyCtrl As Control
X1 = Application.Width
Y1 = Application.Height
X2 = Me.Width
Y2 = Me.Height
CX = X1 / X2
CY = Y1 / Y2
Me.Width = X1
Me.Height = Y1
For Each MyCtrl In Me.Controls
MyCtrl.Top = MyCtrl.Top * CY
MyCtrl.Left = MyCtrl.Left * CX
MyCtrl.Width = MyCtrl.Width * CX
MyCtrl.Height = MyCtrl.Height * CY
On Error Resume Next
MyCtrl.Font.Size = MyCtrl.Font.Size * CY
On Error GoTo 0
Next
[COLOR="Red"][B]On Error Resume Next
me.MultiPage1.Value = ActiveSheet.Index - 1[/B][/COLOR]
End Sub
 
Katılım
11 Ocak 2006
Mesajlar
324
sn. hocam Evren Gizlen
Kırmızı kısmı ekledim error vermedi,fakat istediğim yine olmadı.Hep aynı
page de açıyor.İlgilenmenizden dolayı çok teşekkür ederim.İyi çalışmalar.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
sn. hocam Evren Gizlen
Kırmızı kısmı ekledim error vermedi,fakat istediğim yine olmadı.Hep aynı
page de açıyor.İlgilenmenizden dolayı çok teşekkür ederim.İyi çalışmalar.
O zaman sizin Multipage nesnenizn adı Multipage1 değilmiş demektir.
Multipage nesnesini seçip nesnenizin ismini properties name kutusundan öğreniniz.:cool:
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Aşağıdaki kodları Userformunuzun click olayına yazın ve userformu çalıştırıp Userformun boş bir yerine tıklayım Multipagenin ismini öğrenebilirsiniz.
Ondan sonrada benim yazmış olduğum koddaki multipage1 yerine o ismi yazınız ve sonucu bana bildiriniz..!Kodlar aşağıda.:cool:
Kod:
Dim mp As Object
For Each mp In Me.Controls
    If TypeName(mp) = "MultiPage" Then
        msj = msj & vbLf & "Nesne : " & TypeName(mp) & " İsim : " & mp.Name
    End If
Next
MsgBox msj
 
Katılım
11 Ocak 2006
Mesajlar
324
sn.Evren ve Seyit Hocam
Kendi çalışmamda olmadı.Kendi çalışmamdada userform1 ve MultiPage1 .
Daha önceki cevaplarımda belirtiğim dışında, page sayfalarında birden fazla sayfa butonları mevcut.130 sayfa var.Userformu ana menü olarak kullanmak istiyorum.İyi çalışmalar.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
sn.Evren ve Seyit Hocam
Kendi çalışmamda olmadı.Kendi çalışmamdada userform1 ve MultiPage1 .
Daha önceki cevaplarımda belirtiğim dışında, page sayfalarında birden fazla sayfa butonları mevcut.130 sayfa var.Userformu ana menü olarak kullanmak istiyorum.İyi çalışmalar.
Az önce 12 numaralı mesajda yazdıklarımı uygulayınız.Olacaktır.
Siz beni dinleyin.:cool:
 
Katılım
11 Ocak 2006
Mesajlar
324
sn.Evren Gizlen hocam
Affına sığınarak ve zahmet verdiğim için kusura bakma,kendi çalışmamı gönderiyorum.İyi çalışmalar
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Kodlar gayet güzel çalışıyor.
Siz multipageye 12 tane page koyduğunuzdan dolayı ilk 12 sayfa için kodlar sorunsuz çalışmaktadır.
13 ve yukarı sayfaları seçerseniz kodlar çalışmayacaktır.Çünkü Multipagenizde 12 page var.Daha fazla sayfanınnda çalışması için multipanize dağa page eklemelisiniz.
Kodu yazdığım dosyayı yolluyorum.:cool:
 
Üst