Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 12-04-2018, 13:56   #1
1Al2Ver
Altın Üye
 
1Al2Ver kullanıcısının avatarı
 
Giriş: 05/11/2007
Şehir: İstanbul / Maltepe
Mesaj: 3,746
Excel Vers. ve Dili:
Microsoft Office 365 ProPlus
Varsayılan TextBox'ta Hesaplama

Merhaba,

UserForm'da, çalıştığım KOD aşağıdadır,

İstenen,

TextBox18 ve TextBox10'a tarih girildiğinde ;

TextBox11'in (Yaşı) otomatik hesaplanması,

UserForm'a kayıtta, önce TextBox10'a (Doğum Tarihi) , sonrasında TextBox18'e (Kayıt Tarihi) tarih girilmektedir.

Şöyle bir şey denedim, ya yanlış ve/veya eksik kodladım, yada yanlış yere ekledim,

'TextBox11.Text = (TextBox18.Text - TextBox10.Text)


Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Private Sub CommandButton1_Click()
Application.DisplayAlerts = False
Dim s1, s2,s3 As Worksheet
Set s1 = Sheets("KAYITLI_ÜYE_LİSTESİ")
Set s2 = Sheets("ÜYE_KAYIT_YEDEKLERİ")
Set s3 = Sheets("ÜYE_AİDAT_LİSTESİ")

Dim a, b,c As Long
a = s1.Range("A" & Rows.Count).End(xlUp).Row + 1
b = s2.Range("A" & Rows.Count).End(xlUp).Row + 1
c = s3.Range("B" & Rows.Count).End(xlUp).Row + 1

s1.Select

S1.Unprotect "123456789"
s2.Unprotect "123456789"

s1.Cells(a, 1) = TextBox7.Value 
s1.Cells(a, 2) = TextBox8.Value 
...........................................
S1.Cells(a, 4) = TextBox10.Value 'Doğum Tarihi
S1.Cells(a, 5) = TextBox11.Value 'Yaşı
...........................................
S1.Cells(a, 13) = TextBox18.Value 'Kayıt Tarihi

s2.Cells(b, 1) = TextBox7.Value  
s2.Cells(b, 2) = TextBox8.Value  
...........................................
...........................................

s1.Protect "123456789"
s2.Protect "123456789"

s3.Cells(c, 2) = TextBox8.Value 

MsgBox "Verileriniz Kaydedildi. Form boşaltılıyor "

TextBox8 = "" 
TextBox9 = "" 
..........................................
..........................................

UserForm_Initialize
ThisWorkbook.Save
Application.DisplayAlerts = True

End Sub
Teşekkür ederim.
__________________
Esen Kalın...
1Al2Ver Çevrimdışı   Alıntı Yaparak Cevapla
Eski 16-04-2018, 10:23   #2
1Al2Ver
Altın Üye
 
1Al2Ver kullanıcısının avatarı
 
Giriş: 05/11/2007
Şehir: İstanbul / Maltepe
Mesaj: 3,746
Excel Vers. ve Dili:
Microsoft Office 365 ProPlus
Varsayılan

Merhaba,

Konu günceldir arkadaşlar,

Teşekkür ederim.
__________________
Esen Kalın...
1Al2Ver Çevrimdışı   Alıntı Yaparak Cevapla
Eski 16-04-2018, 10:44   #3
byfika
Altın Üye
 
Giriş: 15/08/2009
Şehir: İZMİR
Mesaj: 156
Excel Vers. ve Dili:
2003 + 2007
Varsayılan

Merhabalar,
Bu kodu denemisiniz.

Private Sub Textbox10_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox11 = Val(TextBox18.Value) - Val(TextBox10.Value)
End Sub
Örnek:
Textbox18 =2018, textbox10 =2000 olduğunu düşünürsek textbox11 = 18 olur
iyi çalışmalar
byfika Çevrimiçi   Alıntı Yaparak Cevapla
Eski 16-04-2018, 10:55   #4
1Al2Ver
Altın Üye
 
1Al2Ver kullanıcısının avatarı
 
Giriş: 05/11/2007
Şehir: İstanbul / Maltepe
Mesaj: 3,746
Excel Vers. ve Dili:
Microsoft Office 365 ProPlus
Varsayılan

Sayın byfika merhaba,

Öncelikle duyarlığınız için teşekkür ederim,

Önerdiğiniz kodu, 1 no.lu mesajımdaki koda entegre etmem gerekiyor, yani CommandButton1 çalıştırıldığında, bu işlemi de gerçekleştirmesi gerekiyor,

Ne yapıla bilir ?

Teşekkür ederim.
__________________
Esen Kalın...
1Al2Ver Çevrimdışı   Alıntı Yaparak Cevapla
Eski 16-04-2018, 11:17   #5
byfika
Altın Üye
 
Giriş: 15/08/2009
Şehir: İZMİR
Mesaj: 156
Excel Vers. ve Dili:
2003 + 2007
Varsayılan

Textbox10,18 e değer girildiğinde textbox11 e otomatik olarak sonucu yazar. End sub dan sonra yazabilirsin, ve commandbutton ile kaydı yaparsınız.
byfika Çevrimiçi   Alıntı Yaparak Cevapla
Eski 16-04-2018, 11:28   #6
1Al2Ver
Altın Üye
 
1Al2Ver kullanıcısının avatarı
 
Giriş: 05/11/2007
Şehir: İstanbul / Maltepe
Mesaj: 3,746
Excel Vers. ve Dili:
Microsoft Office 365 ProPlus
Varsayılan

Tekrar merhaba,

Uyguladım, formül çalışıyor, ancak

TextBox 18 ve 11 tarih içeriyor,

Çıkarma işlemi sonucu YAŞ'ı, küsuratsız bulmak ( örn; 36 ) istiyorum,

Teşekkür ederim.
__________________
Esen Kalın...
1Al2Ver Çevrimdışı   Alıntı Yaparak Cevapla
Eski 16-04-2018, 12:46   #7
Ömer BARAN
Uzman
 
Giriş: 08/03/2011
Şehir: ANKARA / İSTANBUL
Mesaj: 10,235
Excel Vers. ve Dili:
Office 2013 TÜRKÇE
Varsayılan

Merhaba.

Aşağıdaki kodun aynısını sadece başlık satırındaki TextBox numarasını değiştirerek, TextBox18 için de oluşturun.
TextBoxlara yazılan tarihlerin anlamlı tarihler olacağı (örneğin 30.02 veya 31.04 gibi tarih metni yazılmayacağı) varsayılmıştır.
.
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Private Sub Textbox10_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox10 = "" Or TextBox18 = "" Then Exit Sub
If CLng(CDate(TextBox10)) > CLng(CDate(TextBox18)) Then
    MsgBox "-- TextBox10 değeri, TextBox18 değerinden büyük olamaz.", vbInformation
    Exit Sub
Else
    TextBox11 = Evaluate("=DATEDIF(" & CLng(CDate(TextBox10)) & "," & CLng(CDate(TextBox18)) & ",""y"")")
End If
End Sub
__________________
.
☾✭ İnadına TÜRKÇE ✭☽

-- Sorunuzu, gerçek belgenizle aynı yapıda ve olması gereken sonuçların elle yazıldığı örnek belge ile destekleyiniz.
-- ALTIN ÜYELİK öneriyorum. / FORUM KURALLARInı mutlaka okuyunuz.
-- ALTIN ÜYE olmayanlar, örnek belgeyi dosya.tc, dosyaupload.com gibi bir siteye yükleyip, belgeye erişim adresini verebilir.
-- Özel mesaj ile soru sormayınız. / Geri bildirimde bulunulmayan cevaplarımı siliyorum.
Ömer BARAN Çevrimdışı   Alıntı Yaparak Cevapla
Eski 16-04-2018, 13:05   #8
1Al2Ver
Altın Üye
 
1Al2Ver kullanıcısının avatarı
 
Giriş: 05/11/2007
Şehir: İstanbul / Maltepe
Mesaj: 3,746
Excel Vers. ve Dili:
Microsoft Office 365 ProPlus
Varsayılan

Sayın Ömer BARAN merhaba,

Tamamdır, sorunum sayenizde çözülmüştür, teşekkür ederim.

Saygılarımla.
__________________
Esen Kalın...
1Al2Ver Çevrimdışı   Alıntı Yaparak Cevapla
Eski 16-04-2018, 13:09   #9
Ömer BARAN
Uzman
 
Giriş: 08/03/2011
Şehir: ANKARA / İSTANBUL
Mesaj: 10,235
Excel Vers. ve Dili:
Office 2013 TÜRKÇE
Varsayılan

Estağfurullah, kolay gelsin.
__________________
.
☾✭ İnadına TÜRKÇE ✭☽

-- Sorunuzu, gerçek belgenizle aynı yapıda ve olması gereken sonuçların elle yazıldığı örnek belge ile destekleyiniz.
-- ALTIN ÜYELİK öneriyorum. / FORUM KURALLARInı mutlaka okuyunuz.
-- ALTIN ÜYE olmayanlar, örnek belgeyi dosya.tc, dosyaupload.com gibi bir siteye yükleyip, belgeye erişim adresini verebilir.
-- Özel mesaj ile soru sormayınız. / Geri bildirimde bulunulmayan cevaplarımı siliyorum.
Ömer BARAN Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 21:18


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım -- Beylikdüzü mali müşavir - Beylikdüzü mali müşavir - Lingerie - Dyeing Machine - Karton Bardak- Karton Bardak- Çorlu Dil Konuşma Terapisti- Çorlu Dil Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Özel Eğitim- Site Yönetimi- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Çorlu- Çorlu Araç Takip- Rampa- Çorlu İnternet Sitesi- Çorlu Sürücü Kursu- Şişli Avukat- Çorlu Etüt- İstanbul Botanik- Çorlu Sigorta- Kağıt Bardak- Kağıt Bardak- Çorlu Havuz- Çorlu Havuz- Çorlu Perde Yıkama- Okul Danışmanlık- ADR'li taşıma kabı imalatı- Mekanik Tesisat- Çorlu Grafik Tasarım- Çorlu Sondaj- Çorlu Etüt- Futbol Cafe- Beylikdüzü Temizlik- Çorlu Kurs- Çorlu Ders- İzmit Mimar- Hurda Bakır Kablo- Hurda Bakır Kablo- Çorlu Pronet- Çorlu Yönetim- Çorlu Apartman Yönetimi- Çorlu Marangoz- Çorlu Avukat-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden