• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Userforma Bilgi aktarmak

  • Konbuyu başlatan Konbuyu başlatan mtbi00
  • Başlangıç tarihi Başlangıç tarihi
Katılım
28 Kasım 2008
Mesajlar
191
Excel Vers. ve Dili
excel 2003
excel 2010
İyi günler,

Ekte küçük bir örnek verdiğim dosyada userforma bilgi aktarmak istiyorum. userformdaki textboxlara ali1, ali5, ali8 gibi isimler verdim. ama bunlara sayfadan değer yüklemek istediğimde ayrı ayrı değilde for next dögüsüyle bilgi yüklemek istediğimde ali1 yapamadım. sanırım bir yerde hata yapıyorum. yardımcı olursanız sevinirim. teşekkürler.
 

Ekli dosyalar

Nesnelerin taglarına hücre adresini yazarsanız o hücreden çok rahat veri alabilirsiniz.
Dosyanız ektedir.:cool:
Kod:
Private Sub UserForm_Initialize()
Dim txt As Control
For Each txt In Me.Controls
    If TypeName(txt) = "TextBox" Then txt.Text = Range(txt.Tag).Value
Next
End Sub
 

Ekli dosyalar

Sn Evren gizlen ilginizden dolayı teşekkür ederim ama yapmak istediğimi tam anlatamadım galiba. benim istediğim her sayfanın altındaki toplamları almak. yani 1 sayfasından sadece toplamları alıp userforma işletmek. 1 sayfanın, 5 sayfanın ve 8 nci sayfanın. elimde bir dosya var. toplam 16 sayfası var. ben bu 16 sayfadan sadece toplamları alıp userforma işlemek istiyorum. bunun için 16 tane işlem yapmak yerine for next dögüsüyle yapmak istedim. userformada bulunan textboxlara bakiye1, bakiye2, bakiye3.....,bakiye16 gibi isimler verdim. makroda bakiye & i = sheets("1").cells(5,"a") gibi değer yüklemek istediğimde bakiye1 diye oluşturamıyorum. bu konuda yardımcı olursanız sevinirim. şimdiden teşekkürler.
 
Sayın mtbi00

Eğer çalışma sayfanızda başka formüller olmayacaksa şu yöntemi kullanabilirsiniz.

Kod:
Private Sub UserForm_Initialize()
Set s1 = Sheets(1)
Set s2 = Sheets(2)
Set s3 = Sheets(3)
alitop1 = s1.[a:a].SpecialCells(xlCellTypeFormulas, 23).Value
alitop5 = s2.[a:a].SpecialCells(xlCellTypeFormulas, 23).Value
alitop8 = s3.[a:a].SpecialCells(xlCellTypeFormulas, 23).Value
velitop1 = s1.[b:b].SpecialCells(xlCellTypeFormulas, 23).Value
velitop5 = s2.[b:b].SpecialCells(xlCellTypeFormulas, 23).Value
velitop8 = s3.[b:b].SpecialCells(xlCellTypeFormulas, 23).Value
deniztop1 = s1.[c:c].SpecialCells(xlCellTypeFormulas, 23).Value
deniztop5 = s2.[c:c].SpecialCells(xlCellTypeFormulas, 23).Value
deniztop8 = s3.[c:c].SpecialCells(xlCellTypeFormulas, 23).Value
End Sub
 
Sn Evren gizlen ilginizden dolayı teşekkür ederim ama yapmak istediğimi tam anlatamadım galiba. benim istediğim her sayfanın altındaki toplamları almak. yani 1 sayfasından sadece toplamları alıp userforma işletmek. 1 sayfanın, 5 sayfanın ve 8 nci sayfanın. elimde bir dosya var. toplam 16 sayfası var. ben bu 16 sayfadan sadece toplamları alıp userforma işlemek istiyorum. bunun için 16 tane işlem yapmak yerine for next dögüsüyle yapmak istedim. userformada bulunan textboxlara bakiye1, bakiye2, bakiye3.....,bakiye16 gibi isimler verdim. makroda bakiye & i = sheets("1").cells(5,"a") gibi değer yüklemek istediğimde bakiye1 diye oluşturamıyorum. bu konuda yardımcı olursanız sevinirim. şimdiden teşekkürler.
Bu işlem için listbox veya listview kullanmanız daha doğru olacaktır.:cool:
 
sayın gökhan polat ilginizden dolayı teşekkür ederim. dediğiniz yöntemi yapabiliyorum ama benim öğrenmek istediğim bu alitop1, alitop5 gibi satırları tek bir satırda yapabilirmiyim. örneğin;

Private Sub UserForm_Initialize()
Set s1 = Sheets(1)
Set s2 = Sheets(2)
Set s3 = Sheets(3)
s = Array("", "1", "2", "3")
for i=1 to 3
alitop & s(i) = s & i.[a:a].SpecialCells(xlCellTypeFormulas, 23).Value
velitop & s(i) = s & i.[b:b].SpecialCells(xlCellTypeFormulas, 23).Value
deniztop & s(i) = s & i.[c:c].SpecialCells(xlCellTypeFormulas, 23).Value
next
End Sub

gibi. böyle yapmak istediğimde alitop1 değer yükleyemiyorum. böyle yapmanın imkanı varmıdır?
teşekkürler...
 
Geri
Üst