Userformda textbox'a macro yazmak

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,712
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Değerli arkadaşlar, Ek'li dosyanın hücre bazında çalışanını, Sayın leventm tasarlamıştı, sağolsun, ancak form halinde olması daha anlaşılır olabileceği düşüncesiyle ben de kendimce aynı bilgilerden çalışacak bir userform yaptım, ancak userformdaki textbox'lara bu işlemleri yaptırmak adına VB değişkenleri ve/veya veri tipi gerekiyor, bir iki örnek girilirse ben de macroyu inceleyerek diğerlerini yazmaya çalışırım ve yavaş yavaş macro yazmayı öğrenebilirim diye düşünüyorum, bunların yanı sıra olabiliyor ise bir de açılan"ferman"a ihtiyaç var, yardımlarınızla alacağım yol için teşekkürler ederim, saygılarımla
 
Son düzenleme:

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,712
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Yukarıdaki Ek'li dosyada mevcut Userform'da Vit.A İhtiyacı'nı gösteren textbox'a "50" sayısının (sabit) yazılmasını ve excel açılınca formda Vit.A İhtiyacı karşısında görülmesini sağlamak için, aşağıdaki formül uygulandı, ancak bir değişim olmadı, sanırım kod yanlış, doğru kod ne olmalıdır, teşekkür ederim.

Private Sub TextBox17_Change()
Dim VitA As Integer
If VitA = 50 Then
Print TextBox17
End If
End Sub
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,712
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Merhaba, bu istek yaklaşık 8 gündür bekliyor, sanırım sayın ustalarım, yoğunluktan ve zamansızlıktan ilgilenemediler, bir hatırlatma yapayım istedim, umarım yanlış birşey yapmadım, şayet öyle ise affola, ilgilenenlere teşekkürler ve saygılar sunarım.
 
Katılım
18 Aralık 2007
Mesajlar
1
Excel Vers. ve Dili
2003
mrb arkadaşım user formun cok iyi
fakat vb kodlarında problem var
sub hesapla yerine;
Private Function hesapla()
b4 c4 kullanmışsın ama textbox içindeki değeri bu hücrelere aktarmamışsın
o nedenle hesap yapmıyor...
if bloklarını end if ile nihayetlememişsin vs vsvs
.....
dogru kod asagıdadır sadece basal met hızı için yazdım diğer formulleri benzer
şekilde eklersin
Private Sub CommandButton1_Click()
Call hesapla
End Sub
Private Function hesapla()
On Error Resume Next
Dim A, B, Y As Single
A = TextBox1.Text
B = TextBox2.Text
Y = TextBox3.Text
If OptionButton1.Value = True Then 'erkek için
'Bazal Metabolizma Hız
Cells(2, "h") = (66.5 + 13.75 * A) + (5.03 * B) - 6.75 * Y ' excell sayfasına sonucu yazar
TextBox13.Text = (66.5 + 13.75 * A) + (5.03 * B) - 6.75 * Y ' user forma sonucu yazar
End If
If OptionButton2.Value = True Then ' kadın için
'Bazal Metabolizma Hız
Cells(2, "f") = (65.51 + 9.56 * A) + (1.85 * B) - 4.68 * Y ' excell sayfasına sonucu yazar
TextBox13.Text = (65.51 + 9.56 * A) + (1.85 * B) - 4.68 * Y ' user forma sonucu yazar
End If
End Function
Private Sub CommandButton3_Click()
Unload Me
ThisWorkbook.Close True
End Sub
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,712
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
mrb arkadaşım user formun cok iyi
fakat vb kodlarında problem var
sub hesapla yerine;
Private Function hesapla()
b4 c4 kullanmışsın ama textbox içindeki değeri bu hücrelere aktarmamışsın
o nedenle hesap yapmıyor...
if bloklarını end if ile nihayetlememişsin vs vsvs
.....

sayın serdarykl, bu projeye uzun zaman cevap alamamıştım, öncelikle nezaketiniz için teşekkür ederim, tabloyu beğenmenize de bir amatör olarak ayrıca memnun oldum, bu hesaplamaları ben zaten formül ile buluyordum, ancak istedim ki VBA ile olsun, olması halinde işlevsel ve estetik olur ve forum üyesi olan olmayan kişiler de rahat kullanır, ayrıca da kodları gördükleri için iyi bir çalışma, iyi bir örnek olur, tamamlanması adına çabalayacağım, olduğu kadar, tekrar teşekkür ederim, sağolun, bayramınız kutlu olsun, saygılarımla
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,712
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Dosyayı her açtığımda userform A1:G28 hücreleri arasında sabit kalabilir mi ? Her açılışta mouse ile A1:G28 aralığına çekiyorum, olabiliyor ise yardımcı olurmusunuz? Teşekkür ederim.
 
S

Skorpiyon

Misafir
Sayın 1Al2Ver,

Formunuzu aktif hale getirirken yerini de kendiniz belirleyebilirsiniz. Aşağıdaki kod işinizi görür.

Private Sub UserForm_Activate()
UserForm1.Left = 22 'Soldan uzaklık
UserForm1.Top = 104 'Üstten uzaklık
End Sub
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,712
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Sayın 1Al2Ver,

Formunuzu aktif hale getirirken yerini de kendiniz belirleyebilirsiniz. Aşağıdaki kod işinizi görür.

Private Sub UserForm_Activate()
UserForm1.Left = 22 'Soldan uzaklık
UserForm1.Top = 104 'Üstten uzaklık
End Sub
Sayın sertkaya, teşekkür ederim, saygılar
 
Üst