Gönderen Konu: TextBox Yüzde Görünümü ve Hücreye Aktarma Sorunu  (Okunma sayısı 83 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı katip16487

  • Excelce Onbaşı
  • **
  • İleti: 14
  • Puan +0/-0
  • Cinsiyet: Bay
  • Excel'den Daha Fazlası!..
  • Ad Soyad: AHMET REVAN KULA
  • Doğum Yılınız: 1980
  • İl / İlçe: TRABZON / MERKEZ
  • İşletim Sisteminiz: Windows 7 Home Premium
  • Mesleğiniz: MÜDÜR
  • Office Versiyonunuz: 2003 -2007
Private Sub UserForm_Initialize()
Set s1 = Sheets("alfabe")
TextBox1.Text = s1.Range("B2").Value
TextBox2.Text = s1.Range("B3").Value
End Sub

Çok sayıda TextBox içeren bi UserForm'um bulunmakta ve bu formda yer alan TextBox'lara ondalıklı sayısal değer veya yüzde içeren veriler girilmektedir.

Veriler TextBox'a girilip çıkıldığında ilgili Excel hücresine otomatik olarak verilerin aktarılması sağlanmaktadır.

A) RAKAM OLARAK AKTARMA HATASI
1) TextBox'a veri girişi yapıp çıktığımda yazılan sayısal ifadeyi ondalık ayracı olmadan göstermektedir. (Örnek 1234,5)
Ben TextBox görümünün binlik ayracı (.) ve ondalık ayracı (,) olacak şekilde olmasını ve ayrıca ondalık sayı hanesinin 2 olmasını sağlamak istiyorum, ancak bu durumu yazdığım kod ile bir türlü sağlayamamaktayım. (Örnek 1.234,50) veya (1.234,50 TL)

2) Bu şekilde yaptığım veri girişlerini Excel sayfasına "Metin Olarak Saklanan Sayı" şeklinde aktarmaktadır ve bu durum da Excel'in hesap yapmasına engel olmakta ve matematiksel işlemlerde hata oluşturmaktadır.

*** Bu hatanın giderilmesi için, yani TextBox görüntüsünün (1234,5) yerine (1.234,50) olmasını; Excel ilgili hücreye matematiksel hesapta hata olmaması açısından rakam olarak aktarmasını sağlamak için yukarıda yazılı koda ne şekilde eklemem yapmam gerektiği hususunda bilginizi talep ediyorum.

B) YÜZDE OLARAK AKTARMA HATASI
1) TextBox'a veri girişi yapıp çıktığımda yazılan yüzdelik ifadeyi yazıldığı rakam şeklinde göstermektedir.  (Örnek 12)
Ben TextBox görümünün ondalık ayracı (,) olacak şekilde olmasını ve ayrıca ondalık sayı hanesinin 2 veya zaman zaman 3 olmasını sağlamam gerekmekte, ancak bu durumu yazdığım kod ile bir türlü sağlayamamaktayım. (Örnek 12,50 % veya 6,831 %)

2) Bu şekilde yaptığım veri girişlerini (örnek 12) Excel sayfasına (1200,00 %) şeklinde aktarmaktadır. Bu durum ise verinin 100 kat fazlası bir sonuca ulaşmasına ve matematiksel olarak hata oluşmasına neden olmaktadır.

*** Bu nedenle TextBox'a 12 şeklinde yazıldığında görüntünün (12,00 %); 1,5 yazıldığında görüntünün (1,50 %) şeklinde olmasını ve ayrıca Excel ilgili hücrenin (1200,00 %) şeklinde değil, (12,00 %) şeklinde aktarmasını ve matematiksel hesabın bu şekilde yapılmasını istiyorum.

Biraz uzun oldu ama kusuruma bakmayın.

Şimdiden teşekkürler. Kolaylıklar dilerim. Yardımınızı bekliyorum.

Çevrimdışı Orion1

  • Excelce Teğmen
  • ****
  • İleti: 351
  • Puan +10/-0
  • Cinsiyet: Bay
  • Excel'den Daha Fazlası!..
  • Ad Soyad: Evren Gizlen
Ynt: TextBox Yüzde Görünümü ve Hücreye Aktarma Sorunu
« Yanıtla #1 : 12 Ekim 2018, 23:50:02 »
Textboxa veri girmek örneği.
Kod: [Seç]
Private Sub TextBox1_AfterUpdate()
TextBox1.Value = VBA.FormatNumber(TextBox1.Value, 2)
End Sub

textboxtan sayfaya veri atma örneği.:cool:
Kod: [Seç]
Private Sub CommandButton1_Click()
Range("G1").Value = CDbl(TextBox1.Value)
Range("G1").NumberFormat = "#,##0.00"
End Sub