Textboxlarla döngü...

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Merhaba arkadaşlar,
19 tane textbox var.
if CheckBox1.value=True then
textbox1.visible=True
textbox2.visible=True
textbox3.visible=True
(textbox19'a kadar devam edecek.)
else
textbox1.visible=False
textbox2.visible=False
textbox3.visible=False
(textbox19'a kadar devam edecek.)
end if
End Sub

Bunu nasıl uyarlamamız gerekiyor?
Teşekkür ederim...
 

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:
Dim i As Byte
For i = 1 To 19
    Controls("TextBox" & i).Visible = CheckBox1.Value
Next i
 

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Teşekkür ederim hocam, gayet güzel oldu.Eline sağlık...
 

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Hocam aşağıdaki kodları daha kısa olacak şekilde uyarlamak mümkün mü?

Private Sub cb1_Click()
tb1 = [c4]
tb2 = [D4]
tb3 = [E4]
tb4 = [F4]
tb5 = [G4]
tb6 = [H4]
tb7 = [I4]
tb8 = [J4]
tb9 = [K4]
tb10 = [L4]
tb11 = [M4]
tb12 = [N4]
tb13 = [O4]
tb14 = [P4]
tb15 = [Q4]
tb16 = [R4]
tb17 = [S4]
tb18 = [T4]
tb19 = [U4]
End Sub
 
Katılım
22 Eylül 2006
Mesajlar
883
Excel Vers. ve Dili
Office Excel®2007®TR
Bu şekilde dener iseniz olur gibi ...!
Kod:
Private Sub cb1_Click()
For i = 1 To 19
Controls("TextBox" & i).Text = Cells(4, i + 2).Text
Next i
End Sub
 
Son düzenleme:

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Yeni deneme fırsatım oldu.Teşekkür ederim, sonuç çok güzel.Elinize sağlık...
 

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
tb1 = [c4]
tb2 = [D4]
tb3 = [E4]
tb4 = [F4]
tb5 = [G4]
tb6 = [H4]
tb7'de atama yok.
tb8 = [J4]
tb9 = [K4]
tb10 = [L4]
tb11'de atama yok.
tb12 = [N4]
tb13 = [O4]
tb14 = [P4]
tb15 = [Q4]
tb16 = [R4]
Tekrar merhaba,
Yukardaki textboxlara veri girdiğim zaman ilgili hücreye girilen değeri ataması için her texboxun Change olayına
hücre.value=textbox.value
şeklinde uyarlayıp yazıyorum.
Bunu her texbox altına ayrı ayrı yazmak yerine userform (yada başka bir yer) altına daha kısa uyarlama yolu varmıdır?
Çünkü bu şekilde yani 19 textboxluk 20 ayrı dizide ayrı ayrı 380 textbox uygulamam sözkonusu...
 
Son düzenleme:

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Bunu her texbox altına ayrı ayrı yazmak yerine userform (yada başka bir yer) altına daha kısa uyarlama yolu varmıdır?
Arkadaşlar,kodlardan ziyade, mümkün olup olmadığını öğrenebilirmiyim????
 

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
Arkadaşlar,kodlardan ziyade, mümkün olup olmadığını öğrenebilirmiyim????
Her textboxın change olayına yazacağınıza bir buton ekleyin ve butona atayın kodları.Bir kerde işlem olsun.Veya classmodüle ile bir sefer yazılıp ta oalbilir.Ama classmodüle konusunuda ben bilmiyorum.:cool:
 

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Selam,
Bunu en önce düşünmüştüm ama textboxlara girilen veriler hemen atandığı zaman bazı hücrelerdeki formüller girilen değerlerin ortalamasını alıyor.Bu nedenle change olayını tercih etmiştim ama son çare yine ilk düşünülen olacak gibi. :) Yine de ilginize teşekkür ederim...
 

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Not:Konu kalabalığı olmasın diye benzer konu olduğu için bu başlık altında sormayı uygun gördüm...


Kod:
For i = 1 To 16
Cells(3, i + 2).Value = Controls("TextBox" & i).Text

Next i
1'den 16'ye kadar bu şekilde...Benim yapmak istediğim 1'den 16'ya kadar olan dizilimde 7.ve 11. hücrelerle 7.ve 11.textboxları atlaması.
Yani,
Kod:
 i = 1-2-3-4-5-6 - 8-9-10 - 12-13-14-15-16
Teşekkür ederim...

...
 

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
Not:Konu kalabalığı olmasın diye benzer konu olduğu için bu başlık altında sormayı uygun gördüm...


Kod:
For i = 1 To 16
Cells(3, i + 2).Value = Controls("TextBox" & i).Text

Next i
1'den 16'ye kadar bu şekilde...Benim yapmak istediğim 1'den 16'ya kadar olan dizilimde 7.ve 11. hücrelerle 7.ve 11.textboxları atlaması.
Yani,
Kod:
 i = 1-2-3-4-5-6 - 8-9-10 - 12-13-14-15-16
Teşekkür ederim...

...
:cool:
Kod:
Dim myarr As Variant
myarr = Array(0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16)
For i = 1 To 14
    Cells(3, myarr(i)).Value = Controls("TextBox" & myarr(i)).Text
Next
 

aliakgul

Altın Üye
Katılım
9 Mayıs 2005
Mesajlar
404
Excel Vers. ve Dili
Ofis 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
03-08-2025
Teşekkür ederim, gayet güzel oldu...Elinize, yüreğinize sağlık...
 
Üst