Multipage yardım

NBATMAN

Destek Ekibi
Destek Ekibi
Katılım
1 Aralık 2007
Mesajlar
661
Excel Vers. ve Dili
Office 2003 excel Türkçe
Merhaba arkadaşlar,

Forumu yaklaşık 2 saattir araştırdım fakat sorumun cevabını bulamadım.
Sorum şu;
Benim 3 adet farklı userform'um var.
Ben bu user formların üzerindeki nesne ve kodları 3 sayfalı bir multipage de kullanmak istiyorum.
Yani multipage içinde page 1de userform1, page 2 de userform2, page 3 de userform3 çalışacak.
Bunun için mevcut nesneleri ve kodları pagelerin üzerine taşıyorum. Fakat page 1 tıkladığımda excelde olduğu gibi bir butona basıp ( userform 1 çalıştırdığım gibi ) page 1 deki nesne ve işlevlerini ve aynı şekilde diğer pageler ( 1,2,3) tıklandığında pageler üzerinde bulunan nesne ve işlevlerini nasıl çalıştırabilirim?
Bunun için basit bir kod veya özellik var mıdır?Saygılarımla ....
 

Orion1

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

Ofis-2010-TR 32 Bit
:cool:
Kod:
Private Sub MultiPage1_Change()
If MultiPage1.Value = 0 Then UserForm1.Show
If MultiPage1.Value = 1 Then UserForm2.Show
If MultiPage1.Value = 2 Then UserForm3.Show
End Sub
 

NBATMAN

Destek Ekibi
Destek Ekibi
Katılım
1 Aralık 2007
Mesajlar
661
Excel Vers. ve Dili
Office 2003 excel Türkçe
Öncelikle ilginiz için teşekkür ederim Evren Bey.
Fakat benim istediğim tam olarak bu değil ,
1) Ben user formların içeriğini ; hem nesne hemde kod olarak multipagdeki page1,page2,page3 alanlarına aktarmak istiyorum
2) Bu page1,page2,page3 alanlarına aktardığım nesne ve komutlar ,
bu page alanlarından,
eskiden userform lar üzerinden ayrı ayrı yaptığım gibi çalışmasını istiyorum.

Yani pagelerin aktif olduğunu bilip, alt bir sub mış gibi eskiden ayrı ayrı userformlarda olan işlemlerimi nesne ve kodları aktardığım ( seçilen page ) üzerinden gerçekleştirmek istiyorum.

bilmiyorum ne kadar doğru ifade edebildim.Saygılarımla.
 

Orion1

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

Ofis-2010-TR 32 Bit
O zaman nesneleri Multipagenin pagelerine yerleştiriniz.:cool:
 

NBATMAN

Destek Ekibi
Destek Ekibi
Katılım
1 Aralık 2007
Mesajlar
661
Excel Vers. ve Dili
Office 2003 excel Türkçe
Dediğinizi zaten yaptım.
Fakat kodları pagelerin altında nasıl çalıştıracağımı öğrenmek istiyorum ben.
 

Orion1

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

Ofis-2010-TR 32 Bit
Dediğinizi zaten yaptım.
Fakat kodları pagelerin altında nasıl çalıştıracağımı öğrenmek istiyorum ben.
Userformın initilizesine kodlarınızı yazın ve
Pagelere commandbutonlar koymadınızmı?
Commandbutonlara normal kodlarınızı yazınız.:cool:
 

NBATMAN

Destek Ekibi
Destek Ekibi
Katılım
1 Aralık 2007
Mesajlar
661
Excel Vers. ve Dili
Office 2003 excel Türkçe
Tam olarak istediğim şu aslında,
Eskiden ayrı ayrı userformlarımdan yaptığım işleri ,
tek bir user form üzerindeki multipage kullanarak paglerden yapmak istiyorum.Yani üç ayrı userform açmaktansa bir user form açarak multipage üzerindeki 3 ayrı ( page1,page2,page3 ) üzerinde çalışmak istiyorum.Yani page 1 Click olayında eskiden userform1de olan nesnelerim page 1 e çıksın ve kodları çalışsın gibi.
Fakat eski nesnelerimi ve kodlarımı bu pagelere taşıyarak yeniden nesne ve kod tasarlayarak yapmak istemiyorum bunu.
 
Son düzenleme:

Orion1

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

Ofis-2010-TR 32 Bit
Tam olarak istediğim şu aslında,
Eskiden ayrı ayrı userformlarımdan yaptığım işleri ,
tek bir user form üzerindeki multipage kullanarak paglerden yapmak istiyorum.Yani üç ayrı userform açmaktansa bir user form açarak multipge üzerindeki 3 ayrı ( page1,page2,page3 ) üzerinde çalışmak istiyorum.
Fakat eski nesnelerimi ve kodlarımı bu pagelere taşıyarak.
Eski userformdaki nesneleri buraya taşıyamazsınız.Yeniden oluşturmalısınız.:cool:
 

NBATMAN

Destek Ekibi
Destek Ekibi
Katılım
1 Aralık 2007
Mesajlar
661
Excel Vers. ve Dili
Office 2003 excel Türkçe
Bir önerim olucak acaba ne kadar uygulanabilir veya doğru

Mutipage in change olayına bir if şartı koyup page isimleri veya tab indexleri doğrularanarak eski user form kodlarımı çalıştırmak için bir alt sub mış gibi goto işlemini uygulayabilirmiyiz sizce.
 

Orion1

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

Ofis-2010-TR 32 Bit
Bir önerim olucak acaba ne kadar uygulanabilir veya doğru

Mutipage in change olayına bir if şartı koyup page isimleri veya tab indexleri doğrularanarak eski user form kodlarımı çalıştırmak için bir alt sub mış gibi goto işlemini uygulayabilirmiyiz sizce.
Diğer userformlardan kodları kullanmak isterseniz.Nesneler çakışabilir.Mesela Bir userformda 2 adet ayni isimde nesne ismi olamaz.Sizde 2 tane textbox1 nesnesi varsa çakışır ,çalışmaz.Nesne isimleri çakışmıyorsa bir denemek lazım .Multipagenin page olayında if kullanrak sizinde dediğiniz gibi.İlk page nin adı if multipage1.value = 0 diye sorgulayabilirsiniz.Bir denemelisiniz.
 

NBATMAN

Destek Ekibi
Destek Ekibi
Katılım
1 Aralık 2007
Mesajlar
661
Excel Vers. ve Dili
Office 2003 excel Türkçe
İyi akşamlar Evren Bey,

dünkü sorumu goto ile çözebilirmiyim demiştim galiba oldu fakat ekteki hata mesajını aşağıdaki kodlardan kırmızı ile işaretli satırda alıyorum yardımcı olabilirmisiniz çözemedim.

Private Sub MultiPage1_change()
If MultiPage1.Value = 0 Then GoTo m
m:
Private Sub CommandButton1_Click() 'BUL
Dim k As Range, i As Byte
If ComboBox1.Value = " " Then Exit Sub 'kayıt no seçimi için combobox1
Set k = Sheets("KART").Range("A6:A525").Find(ComboBox1.Value,, xlValues, xlWhole)
For i = 1 To 12
Controls("TextBox" & i).Value = Empty
Next
If Not k Is Nothing Then
k.Select
TextBox2.Value = Sheets("KART").ActiveCell.Offset(0, 1).Value
TextBox3.Value = Sheets("KART").ActiveCell.Offset(0, 2).Value
TextBox4.Value = Sheets("KART").ActiveCell.Offset(0, 3).Value
TextBox5.Value = Sheets("KART").ActiveCell.Offset(0, 4).Value
TextBox6.Value = Sheets("KART").ActiveCell.Offset(0, 5).Value
TextBox7.Value = Sheets("KART").ActiveCell.Offset(0, 6).Value
TextBox8.Value = Sheets("KART").ActiveCell.Offset(0, 7).Value
TextBox9.Value = Sheets("KART").ActiveCell.Offset(0, 8).Value
TextBox10.Value = Sheets("KART").ActiveCell.Offset(0, 9).Value
TextBox11.Value = Sheets("KART").ActiveCell.Offset(0, 10).Value
TextBox12.Value = Sheets("KART").ActiveCell.Offset(0, 11).Value
TextBox13.Value = Sheets("KART").ActiveCell.Offset(0, 12).Value
Else
MsgBox "Değer Bulunumadı", vbCritical, "DİKKAT"
End If
ComboBox2.Text = TextBox4.Text
ComboBox3.Text = TextBox8.Text
ComboBox4.Text = TextBox9.Text
ComboBox5.Text = TextBox10.Text
ComboBox6.Text = TextBox11.Text
ComboBox7.Text = TextBox12.Text
ComboBox8.Text = TextBox13.Text
ComboBox9.Text = TextBox6.Text
End Sub
 
Son düzenleme:

Orion1

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

Ofis-2010-TR 32 Bit
k.select satırını silin ve activecell.offset yazan yerleride k.offset olarak değiştiriniz.:cool:
 

NBATMAN

Destek Ekibi
Destek Ekibi
Katılım
1 Aralık 2007
Mesajlar
661
Excel Vers. ve Dili
Office 2003 excel Türkçe
ÇÖZÜLDÜ...bul-değiştir kodları

Evren Bey Günaydın,

Yukarıdaki kodlarda K.Select satırırını silince bir sonraki aşamam olan değiştir çalışmıyor,çünkü k combobox1 deki değere eşit yani bul butonuna bastığımda combobox1 den seçilen değer sayfada aranıyor ( bu değer sütun A da) ve hücre aktif edlerek aktifsatır olayı gerçekleştiriliyor,2.aşamada değiştir butonuna basılarak form üzerindeki textbox veya comboboxlar üzerinde yapılan seçimler değiştiriliyor.Fakat şimdi k.select işlemini iptal ettiğimiz için comboboxda ki değerin bulunduğu hücre dolayısıyla satır aktif edilmiyor.Değiştir işlemide yapılamıyor.
Bir comboboxdaki değeri sayfada bulup o hücreyi nasıl aktif edebilirim.
Saygılarımla...
 
Son düzenleme:
Üst