multipagede textbox kullanımı

Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
multipage sayfasında textbox dosyalarına giriş

arkadaşlar benim bir problemim var 1 sayfalık bir excel sayfam ve satır sayısı yaklasık olarak 70 satır

yapmış olduğum vei girişi için textbox dosyaları sıgmadıgı ve daha duzenli görünmesi için multipage sayfasında textbox lar yaptım
ilk multipage sayfasında 10 giriş satarı 2.de 11-20 arası 3 de 31-40 arası şeklinde sürekli aynı sayfada giriş yapmasını saglamaya calısıyorum. ilk sayfada verileri gösteriyorum ve yazıyorum fakat 2 . sayfaya kaldıgım satırdan devam ettiremiyorum bir türlü veri göstermiyor nasıl saglayabilirim
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Ekteki örneği inceleyiniz.

Malzemeler : 1 adet Userform, 1 Adet Multipage (7 sayfalı), 70 adet Textbox (herbir page'de 10 adet olmak üzere)

Kodlar : (Userform1'in kod sayfasına yazılmak üzere)

Kod:
Option Explicit
[COLOR=darkgreen]'-------------------------------------[/COLOR]
Private Sub MultiPage1_Change()
[COLOR=darkgreen]    'Multipage'in seçilen sayfasına göre,
    'Textboxlara veri yükleyecek
    'prosedür çağrılıyor[/COLOR]
    Call Sayfa_Degisimi(MultiPage1.Value)
End Sub
[COLOR=darkgreen]'------------------------------------[/COLOR]
Private Sub UserForm_Initialize()
[COLOR=darkgreen]    'Userform ilk kullanım için hazırlanıyor[/COLOR]
    Dim sh As Page
    Dim x As Integer
    
    Me.Caption = "Multipage Örnek ..."
    
[COLOR=darkgreen]    'UF ilk açıldığında ilk sayfa görüntülensin[/COLOR]
    MultiPage1.Value = 0
[COLOR=darkgreen]    
    'Multipage'in sayfasına göre, Textboxlara veri yükleyecek
    'prosedür çağrılıyor[/COLOR]
    Call Sayfa_Degisimi(MultiPage1.Value)
    
[COLOR=darkgreen]    'Multipage'in herbir sayfasına isim veriliyor.[/COLOR]
    For Each sh In Me.MultiPage1.Pages
        x = x + 1
        sh.Caption = "S - " & x
    Next
        
End Sub
[COLOR=darkgreen]'---------------------------------------[/COLOR]
Private Sub Sayfa_Degisimi(pg As Integer)
    Dim ctrl As Control
    Dim shNo As Integer
    
    shNo = pg
    pg = pg * 10
    
[COLOR=darkgreen]    'Multipage'in başvurulan sayfasındaki Textbox'lara
    'Referansları hesaplanan hücre değerleri alınıyor
[/COLOR]    For Each ctrl In Me.MultiPage1.Pages(shNo).Controls
        If TypeOf ctrl Is MSForms.TextBox Then
           pg = pg + 1
           ctrl.Text = Cells(pg, 1)
        End If
    Next
 
End Sub
 
Son düzenleme:
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
saolasın arkadasım . başka bir soruum olcak 7 sayfada topkam 7*140 = 980 adet text box var excel sayfasındaki herbir satır için 14 textbox yani
a1 =texbox1 - b1=textbox2 c1=texbox3.....z1 =textbox14 şeklinde nasıl yapabilirim
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
ayrıca textboxlarda o veriler görünecek ve gerektiğinde textbox değistirilip kaydedilecek
 

Orion1

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

Ofis-2010-TR 32 Bit
saolasın arkadasım . başka bir soruum olcak 7 sayfada topkam 7*140 = 980 adet text box var excel sayfasındaki herbir satır için 14 textbox yani
a1 =texbox1 - b1=textbox2 c1=texbox3.....z1 =textbox14 şeklinde nasıl yapabilirim
Bir yanlışlık var.!!!
Bu şekilde sırası ile gidilidğinde Z1 Textbox14'ten fazla bir değer alır.!!!!! :cool:
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
bilgiler soyle
text1;a6-text2;b6-text3;c6-text4;d6-text5;e6-text6;f6-text7;g6-text8;h6
text9-I6; text10;w14-textbox11;w15-text12;x14-text12;15-text13;z14-text14;z15 şeklinde aynı sayfadan farklı yerlerden bilgi alması gerekiyor
 

Orion1

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

Ofis-2010-TR 32 Bit
anlaşılan textboxların veri aldığı yerler belli bir düzen ve sırada gitmiyor.
Kusura bakma arkadaşım ama 980 adet textbox için ayrı ayrı kod yazamayacam.
Size kolay gelsin.:cool:
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
saolasın arkadasım . başka bir soruum olcak 7 sayfada topkam 7*140 = 980 adet text box var excel sayfasındaki herbir satır için 14 textbox yani
a1 =texbox1 - b1=textbox2 c1=texbox3.....z1 =textbox14 şeklinde nasıl yapabilirim
Bu kadar TextBox kullanımı hakikaten çok fazla ... Bu kadar nesneyi nasıl yönetmeyi düşünüyorsunuz ki ?

Hem tasarlandığınız Userform, hem de yazdığınız kod verimli olmaz.

Size tavsiyem, Textbox'ları unutup, Spreadsheet nesnesine yönelmeniz. Herbir MultiPage'e bir adet SpreadSheet yerleştirin. Böylelikle; 980 adet Textbox'ın görevini, 7 tane Spreadsheet halledebilir.

Spreadsheet kullanımı için, forumda ismini yazarak arama yapabilirsiniz.
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
belli bir düzende gidiyor

aslında belli bir düzende gidiyor. her textbox altındaki textbox nosu+14 şeklinde numaralandı aldığı yerlerde sırayla asagı doğru devam ediyor
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
--------------------------------------------------------------------------------

arkadaslar yapmış olduğum formda multi page sayfasında 7 sayfa var her sayfada 140 adte listbox var ve aldığı satırlar sırayla devam ediyor. ben yapmış olduğum kodu aşağıya yazıyorum. Fakat 980 adet list box olup 70 satır girmektense bunun başka formulu farmı
TextBox1.Text = Range("B6").Text: TextBox2.Text = Range("C6").Text: TextBox3.Text = Range("D6").Text: TextBox4.Text = Range("E6").Text: TextBox5.Text = Range("F6").Text: TextBox6.Text = Range("G6").Text: TextBox7.Text = Range("H6").Text: TextBox8.Text = Range("I6").Text: TextBox9.Text = Range("W14").Text: TextBox10.Text = Range("W15").Text: TextBox11.Text = Range("X14").Text: TextBox12.Text = Range("X15").Text: TextBox13.Text = Range("Z14").Text: TextBox14.Text = Range("Z15").Text
YUKARISINDA YAZILAN KOD HER SIRADA OLAN TOPLAM 14 ADET TEXTBOX İÇİN HAZIRLANMIŞTIR. AŞAĞIYA DOĞRU BOLE DEVAM EDİYOR

TextBox15.Text = Range("B7").Text: TextBox16.Text = Range("C7").Text: TextBox17.Text = Range("D7").Text: TextBox18.Text = Range("E7").Text: TextBox19.Text = Range("F7").Text: TextBox20.Text = Range("G7").Text: TextBox21.Text = Range("H7").Text: TextBox22.Text = Range("I7").Text: TextBox23.Text = Range("W16").Text: TextBox24.Text = Range("W17").Text: TextBox25.Text = Range("X16").Text: TextBox26.Text = Range("X17").Text: TextBox27.Text = Range("Z16").Text: TextBox28.Text = Range("Z17").Text
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,655
Excel Vers. ve Dili
Pro Plus 2021
Sayın yetiskol, sorunuza bir örnek ekleseydiniz, belki daha çabuk cevap alabilirdiniz, kimsenin 7 sayfalı multipage, 980 tane textbox ve bunların ilgili olduğu sayfayı oluşturup uğraşacağını zannetmiyorum. Sorunuzu daha ayrıntılı yazarsanız da iyi olur, örneğin istediğiniz bu textboxlara sayfadan veri alınması mı yoksa textboxlardan sayfaya veri gönderilmesi mi?
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
dosya eklenti daha iyi anlatabillmek adına

Anlattığımdan anlaşılmaması normal :) bu nedenle dosya da ekledim
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
TextBox1+14.Text = Range("B6+1").Text: TextBox2+14.Text = Range("C6+1").Text: TextBox3+14.Text = Range("D6+1").Text: TextBox4+14.Text = Range("E6+1").Text: TextBox5+14.Text = Range("F6+1).Text: TextBox6+14.Text = Range("G6+1").Text: TextBox7+14.Text = Range("H6+1").Text: TextBox8+14.Text = Range("I6+1").Text: TextBox9+14.Text = Range("W14+2").Text: TextBox10+14.Text = Range("W15+2").Text: TextBox11+14.Text = Range("X14+2").Text: TextBox12+14.Text = Range("X15+2").Text: TextBox13+14.Text = Range("Z14+2").Text: TextBox14+14.Text = Range("Z15+2").Text

dosyada formul olarak bu şekilde verileri otomatik olarak aldırabileceğimiz bir formül olabilirmi artırılacak değerler kalın ve renklidir
her satırda bu sekilde gerceklesmesini sağlama istiyorum
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
arkadaslar yardımcı olabilecek kimse yokmu
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,655
Excel Vers. ve Dili
Pro Plus 2021
Textboxlardan da sayfaya veri gönderebileceğiniz düşünülerek, önce textboxların taglarına sayfa üzerindeki adresler eklenmiştir. Böylece her textbox'un tagında sayfadaki adresler istenildiği zaman kullanılabilir.

Kod:
Private Sub UserForm_Initialize()
    Sheets("ihracat").Select
    If Sheets("ihracat").Range("D5") = "" Then
        bosdaire.Show
    Else:
    End If
    '*************************************
    sut = Array(23, 24, 26)
    sat = 5
    sat2 = 12
    a = 0
    For i = 1 To 7
        For ii = 1 To 10
            sat = sat + 1
            For iii = 2 To 9
                a = a + 1
                Me.Controls("Textbox" & a).Tag = Cells(sat, iii).Address
            Next iii
            sat2 = sat2 + 2
            For iii = 0 To 2
                For iv = 0 To 1
                    a = a + 1
                    Me.Controls("Textbox" & a).Tag = Cells(sat2 + iv, sut(iii)).Address
                Next iv
            Next iii
        Next ii
    Next i
    For x = 1 To 980
        Me.Controls("Textbox" & x).Text = Range(Me.Controls("Textbox" & x).Tag)
    Next x
    '*************************************
End Sub
 
Katılım
7 Nisan 2008
Mesajlar
37
Excel Vers. ve Dili
2000sb-2003sb-xp standart
eline saglık arkadasım harika olmuş. Bişey daha sorsam bunları textboxda gosterıyor ya ben istediğimi değiştirmek istediğimde kaydet butonu yapsam nasıl kaydetmesını saglarım
 
Katılım
17 Kasım 2011
Mesajlar
31
Excel Vers. ve Dili
2003 ve 2007
Ekli Dosya inmiyor.

Bu dosyalar niççin inmiyor silinmiş mi?

Ekteki örneği inceleyiniz.

Malzemeler : 1 adet Userform, 1 Adet Multipage (7 sayfalı), 70 adet Textbox (herbir page'de 10 adet olmak üzere)

Kodlar : (Userform1'in kod sayfasına yazılmak üzere)

Kod:
Option Explicit
[COLOR=darkgreen]'-------------------------------------[/COLOR]
Private Sub MultiPage1_Change()
[COLOR=darkgreen]    'Multipage'in seçilen sayfasına göre,
    'Textboxlara veri yükleyecek
    'prosedür çağrılıyor[/COLOR]
    Call Sayfa_Degisimi(MultiPage1.Value)
End Sub
[COLOR=darkgreen]'------------------------------------[/COLOR]
Private Sub UserForm_Initialize()
[COLOR=darkgreen]    'Userform ilk kullanım için hazırlanıyor[/COLOR]
    Dim sh As Page
    Dim x As Integer
    
    Me.Caption = "Multipage Örnek ..."
    
[COLOR=darkgreen]    'UF ilk açıldığında ilk sayfa görüntülensin[/COLOR]
    MultiPage1.Value = 0
[COLOR=darkgreen]    
    'Multipage'in sayfasına göre, Textboxlara veri yükleyecek
    'prosedür çağrılıyor[/COLOR]
    Call Sayfa_Degisimi(MultiPage1.Value)
    
[COLOR=darkgreen]    'Multipage'in herbir sayfasına isim veriliyor.[/COLOR]
    For Each sh In Me.MultiPage1.Pages
        x = x + 1
        sh.Caption = "S - " & x
    Next
        
End Sub
[COLOR=darkgreen]'---------------------------------------[/COLOR]
Private Sub Sayfa_Degisimi(pg As Integer)
    Dim ctrl As Control
    Dim shNo As Integer
    
    shNo = pg
    pg = pg * 10
    
[COLOR=darkgreen]    'Multipage'in başvurulan sayfasındaki Textbox'lara
    'Referansları hesaplanan hücre değerleri alınıyor
[/COLOR]    For Each ctrl In Me.MultiPage1.Pages(shNo).Controls
        If TypeOf ctrl Is MSForms.TextBox Then
           pg = pg + 1
           ctrl.Text = Cells(pg, 1)
        End If
    Next
 
End Sub
 
Katılım
18 Aralık 2022
Mesajlar
53
Excel Vers. ve Dili
2010
Peki, multimage de Page1 sayfasına set NewTextbox komutu ile Textbox oluşturmak istesek Set satırını nasıl yazmalıyız.
 
Üst