Excel hücresindeki TARİH'in TextBox'da farklı farklı görünmesi 03.15.2008 gibi

Katılım
2 Ağustos 2006
Mesajlar
21
VBA konusunda yeniyim. Öğrenmeye çalışıyorum. Yardımcı olursanız memnun olacağım. Benim 2 sorum olacaktı.
1.SORUM: Bir excel hücresindeki(14.03.2008) tarih Textbox'da hatalı(03.14.2008) olarak görünüyor. Bunu nasıl düzeltebilirim? Çünkü zaman zaman TextBoxlar üzerinden bu tarihleri çağırıp değiştireceğim.
2.SORUM: 8 tane TextBox'ım var.
Text1 =200,25 YTL
Text2 =300,50 YTL
Text3 =499,25 YTL
Text4 =1000,00 (Text1 +Text2+Text3)
Text5 = 5 kişi
Text6 =200,00 YTL (Text4 / Text5)
Text7 =155,00 YTL
Text8 ="ALTINDA" Yani Text6 Text7 den büyük olduğundan altında yazdı, küçük olsaydı "ÜSTÜNDE" yazacaktık.
Bunu VBA da yapabilir miyiz?
NOT: Bu sayıları TextBoxda virgülden sonra yazmada problemle karşılaştım. Bu konuyu da göz önüne alırsanız memnun olurum.
İlginize şimdiden teşekkür ederim efendim. Kolay gelsin.
 
Katılım
17 Haziran 2006
Mesajlar
218
Excel Vers. ve Dili
excel 2000 Türkçe
&
excel 2003 Türkçe
ekteki dosyayi inceleyiniz
 
Katılım
2 Ağustos 2006
Mesajlar
21
karadami Üstadım,
Doğrusu ne diyeceğimi bilemiyorum. Çok aradım, uğraştım fakat bulamamıştım. Çok Çok teşekkür ederim. Elinize sağlık.
 
Katılım
2 Ağustos 2006
Mesajlar
21
EŞİtlİk Durumunda "eŞİt" Yazabİlİr Mİyİz?

ekteki dosyayi inceleyiniz
Private Sub TextBox7_Change()
If TextBox7 = "" Then TextBox8 = ""
If Val(TextBox7.Value) < Val(TextBox6.Value) Then
TextBox8 = "ALTINDA"

Else
TextBox8 = "ÜSTÜNDE"

End If
End Sub

Karadami Üstadım, bu kodların devamında "Text6 = Text7 ise
TextBox8 ="EŞİT" yazdırabilir miyiz?
Size zahmet olacak ama. Çok teşekkür ederim.
 

Orion1

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

Ofis-2010-TR 32 Bit
Aşağıdaki kodu deneyiniz.:cool:
Kod:
Private Sub TextBox7_Change()
If Textbox7 = "" Then Textbox8 = ""
If Val(Textbox7.Value) < Val(Textbox6.Value) Then
Textbox8 = "ALTINDA"

ElseIf Textbox6.Value = Textbox7.Value Then
Textbox8.Value = "EŞİT"
Else

Textbox8 = "ÜSTÜNDE"

End If
End Sub
 
Katılım
17 Haziran 2006
Mesajlar
218
Excel Vers. ve Dili
excel 2000 Türkçe
&
excel 2003 Türkçe
Kod:
 if val(textbox7.value=val(textbox6.value) then textbox8="E&#350;&#304;T"
bu kodu yolladiginiz koddaki end if ile end sub arasina yazin.
...
end if
if val(textbox7.value=val(textbox6.value) then textbox8="E&#350;&#304;T"
end sub
olarak..
 
Katılım
2 Ağustos 2006
Mesajlar
21
Aşağıdaki kodu deneyiniz.:cool:
Kod:
Private Sub TextBox7_Change()
If Textbox7 = "" Then Textbox8 = ""
If Val(Textbox7.Value) < Val(Textbox6.Value) Then
Textbox8 = "ALTINDA"

ElseIf Textbox6.Value = Textbox7.Value Then
Textbox8.Value = "EŞİT"
Else

Textbox8 = "ÜSTÜNDE"

End If
End Sub
Evren Gizlen USTAM, verdiğiniz kodlar eşitlik durumunda yine "EŞİT" yazmadı. Bir zahmet bakabilir misiniz? Çok teşekkür ederim.
 
Katılım
2 Ağustos 2006
Mesajlar
21
Karadimi ustam ellerine sa&#287;l&#305;k. Tamamd&#305;r. &#199;ok te&#351;ekk&#252;r ederim.
Ayr&#305;ca Evren Gizlen Ustama da te&#351;ekk&#252;r ederim.
 

Orion1

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

Ofis-2010-TR 32 Bit
Evren Gizlen USTAM, verdiğiniz kodlar eşitlik durumunda yine "EŞİT" yazmadı. Bir zahmet bakabilir misiniz? Çok teşekkür ederim.
Eminmisiniz?:cool:
Önceki textbox7 change olayını sildinizmi?
Ayrıca kodların çalışabilmesi için en son Textbox7 ye veri girmelisiniz.:cool:
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,286
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
&#214;nemsiz g&#246;r&#252;nebilir ancak hat&#305;rlatmakta yarar olabilir.

Bildi&#287;iniz gibi VBA da ondal&#305;k ayrac&#305; "." d&#305;r. Biz "," kullan&#305;r&#305;z. Val () fonksiyonu virg&#252;l&#252; string olarak de&#287;erlendirdi&#287;i i&#231;in virg&#252;le kadar olan k&#305;sm&#305; say&#305; olarak al&#305;r.

Bunun sonucu olarak da, kuru&#351;lu/ondal&#305;k say&#305;larda k&#305;yaslama yap&#305;ld&#305;&#287;&#305;nda hep e&#351;itsizlik d&#246;necektir.
 

Orion1

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

Ofis-2010-TR 32 Bit
Önemsiz görünebilir ancak hatırlatmakta yarar olabilir.

Bildiğiniz gibi VBA da ondalık ayracı "." dır. Biz "," kullanırız. Val () fonksiyonu virgülü string olarak değerlendirdiği için virgüle kadar olan kısmı sayı olarak alır.

Bunun sonucu olarak da, kuruşlu/ondalık sayılarda kıyaslama yapıldığında hep eşitsizlik dönecektir.
Zeki hocam verdiğiniz bilgiler için teşekkürler.
Bende zaten yadığım kodda VAL kullanmadım.
Kod:
ElseIf Textbox6.Value = Textbox7.Value Then
Textbox8.Value = "EŞİT"
 
Katılım
2 Ağustos 2006
Mesajlar
21
Buraya kadar tamam da yaln&#305;z bir sorun g&#246;r&#252;n&#252;yor. Rakamlar YTL den sonra YKR&#350; yaz&#305;lm&#305;yor. &#214;rn. 150,25 yazd&#305;&#287;&#305;m zaman toplam&#305;nda 150,00 yaz&#305;yor(TextBox4'e). &#214;rnek kodu da &#351;&#246;yle:

TextBox1 = Format(TextBox1, "###0.00 YTL")

Burada Kuru&#351;lar&#305; da toplamas&#305;n&#305; istiyorum. Bu konu da yard&#305;mc&#305; olabilir misiniz?
 

Orion1

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

Ofis-2010-TR 32 Bit
Zeki G&#252;rsoy;255913' Alıntı:
&#214;nemsiz g&#246;r&#252;nebilir ancak hat&#305;rlatmakta yarar olabilir.

Bildi&#287;iniz gibi VBA da ondal&#305;k ayrac&#305; "." d&#305;r. Biz "," kullan&#305;r&#305;z. Val () fonksiyonu virg&#252;l&#252; string olarak de&#287;erlendirdi&#287;i i&#231;in virg&#252;le kadar olan k&#305;sm&#305; say&#305; olarak al&#305;r.

Bunun sonucu olarak da, kuru&#351;lu/ondal&#305;k say&#305;larda k&#305;yaslama yap&#305;ld&#305;&#287;&#305;nda hep e&#351;itsizlik d&#246;necektir.
Buraya kadar tamam da yaln&#305;z bir sorun g&#246;r&#252;n&#252;yor. Rakamlar YTL den sonra YKR&#350; yaz&#305;lm&#305;yor. &#214;rn. 150,25 yazd&#305;&#287;&#305;m zaman toplam&#305;nda 150,00 yaz&#305;yor(TextBox4'e). &#214;rnek kodu da &#351;&#246;yle:

TextBox1 = Format(TextBox1, "###0.00 YTL")

Burada Kuru&#351;lar&#305; da toplamas&#305;n&#305; istiyorum. Bu konu da yard&#305;mc&#305; olabilir misiniz?.
Zeki bey sizi uyarm&#305;&#351;t&#305;.:cool:
 
Katılım
17 Haziran 2006
Mesajlar
218
Excel Vers. ve Dili
excel 2000 Türkçe
&
excel 2003 Türkçe
Bende b&#305;r sorun gozukmuyor, kusuratlar&#305; da topluyor.... verd&#305;g&#305;m ornek dosyada userform ustunde bel&#305;rtt&#305;g&#305;m g&#305;b&#305; kusurat g&#305;rmek &#305;c&#305;n "." kullan&#305;n d&#305;ye not b&#305;rakm&#305;st&#305;m....
 
Katılım
2 Ağustos 2006
Mesajlar
21
KÜsÜratli Toplamlari ??

Üstadlarım, Gönderdiğim bu formu yardımlarınızla yapmaya çalıştım. Fakat Formda bazı hatalar var; çözemedim. Bir zahmet bakabilir misiniz?
İlginize Teşekkür ederim.

Bu Arada yardımları nedeniyle
"Karadami, Evren Gizlen ve Zeki Gürsoy" Uzmanlarıma TEŞEKKÜR ediyorum.
EMEĞE SAYGI DUYMAK LAZIM
 
Katılım
2 Ağustos 2006
Mesajlar
21
Say&#305;n Evren Gizlen Usta,
Dediklerinizi yapt&#305;m fakat Formda problem &#231;&#305;kt&#305;. A&#231;&#305;klamas&#305; ile birlikte yukar&#305;da g&#246;nderdim. Bir zahmet bakabilir misiniz?
&#304;lginize te&#351;ekk&#252;r ederim.
 
Katılım
17 Haziran 2006
Mesajlar
218
Excel Vers. ve Dili
excel 2000 Türkçe
&
excel 2003 Türkçe
1. sorunuzu anlamad&#305;m. zaten direk olarak al&#305;yorsunuz form &#252;st&#252;ne siz nas&#305;l bir &#351;ey istiyorsunuz anlayamad&#305;m.
&#246;rnek olarak
150.25 => DOGRU KULLANIM
150,25 => YANLIS KULLANIM Bu &#351;ekilde yazarsan&#305;z 15025 olarak kabul edilir.
2.sorunuzun cevab&#305; i&#231;in daha &#246;nceki mesajlarda da belirtti&#287;im gibi kuru&#351; girmeden &#246;nce "." kullanin "," degil.
3. sorunuzun cevab&#305;
Kod:
Private Sub TextBox6_Change()
If TextBox7 <> "" Then TextBox8 = ""
If (TextBox7.Value) < (TextBox6.Value) Then
TextBox8 = "1/3'&#252;n &#220;ST&#220;NDE"
Else
TextBox8.Value = "1/3'&#252;n ALTINDA"
End If
If (TextBox7.Value) = (TextBox6.Value) Then TextBox8 = "1/3'&#252;ne E&#222;&#221;T"
End Sub
 
Katılım
2 Ağustos 2006
Mesajlar
21
1. sorunuzu anlamadım. zaten direk olarak alıyorsunuz form üstüne siz nasıl bir şey istiyorsunuz anlayamadım.
örnek olarak
150.25 => DOGRU KULLANIM
150,25 => YANLIS KULLANIM Bu şekilde yazarsanız 15025 olarak kabul edilir.
2.sorunuzun cevabı için daha önceki mesajlarda da belirttiğim gibi kuruş girmeden önce "." kullanin "," degil.
3. sorunuzun cevabı
Kod:
Private Sub TextBox6_Change()
If TextBox7 <> "" Then TextBox8 = ""
If (TextBox7.Value) < (TextBox6.Value) Then
TextBox8 = "1/3'ün ÜSTÜNDE"
Else
TextBox8.Value = "1/3'ün ALTINDA"
End If
If (TextBox7.Value) = (TextBox6.Value) Then TextBox8 = "1/3'üne EÞÝT"
End Sub
Karadami Ustam, teşekkür ederim. Dediklerinizi harfiyen yaptım. Fakat;
1.SORUM: Tarih ve sayıyı Excel Sayfasından değil de UserForm üzerindeki herhangi biryerden(TextBox vs. den) almak istemiştim.
2.SORUM: Text1,2,3 ve 13'e yazdıklarımın toplamı Text4'e Küsüratlı olarak geçmiyor. Gönderdiğim dosya üzerinde dener misiniz? "," yerine "."NOKTA kullanıyorum zaten. Yazarken yazıyor fakat Toplama geçmiyor.
3.SORUM: Text6 ile Text7'nin eşitliği durumunda "EŞİT" de yazmıyor. Form üzerinde deneyebilir misiniz?
 
Katılım
17 Haziran 2006
Mesajlar
218
Excel Vers. ve Dili
excel 2000 Türkçe
&
excel 2003 Türkçe
Karadami Ustam, teşekkür ederim. Dediklerinizi harfiyen yaptım. Fakat;
1.SORUM: Tarih ve sayıyı Excel Sayfasından değil de UserForm üzerindeki herhangi biryerden(TextBox vs. den) almak istemiştim.
2.SORUM: Text1,2,3 ve 13'e yazdıklarımın toplamı Text4'e Küsüratlı olarak geçmiyor. Gönderdiğim dosya üzerinde dener misiniz? "," yerine "."NOKTA kullanıyorum zaten. Yazarken yazıyor fakat Toplama geçmiyor.
3.SORUM: Text6 ile Text7'nin eşitliği durumunda "EŞİT" de yazmıyor. Form üzerinde deneyebilir misiniz?
sayin goco son verdigim kodlari formlar arasina ekleyin. dikkat edin textbox6_change()
...
end sub

sizin kodlarinizda bu yok. yada textbox 7 nin ustune 2 tiklayin ve textbox7_change deki 7 i 6 yapin. o zaman esittir yaziyor.

eklediginiz dosya bende sorunsuz calisiyor kusuratlarida topluyor isleme de dahil ediyor.
 
Katılım
2 Ağustos 2006
Mesajlar
21
sayin goco son verdigim kodlari formlar arasina ekleyin. dikkat edin textbox6_change()
...
end sub

sizin kodlarinizda bu yok. yada textbox 7 nin ustune 2 tiklayin ve textbox7_change deki 7 i 6 yapin. o zaman esittir yaziyor.

eklediginiz dosya bende sorunsuz calisiyor kusuratlarida topluyor isleme de dahil ediyor.
Sayın Karadimi Hocam, İnanın dediklerinizi denedim. Fakat hata verdi. Dosya burada bir bakıp düzeltebilir misiniz acaba? Başınızı ağrıtıyorum kusura bakmayın. İlginize teşekkür ederim.
 
Üst