Skip to main content

AccessTr.neT


Metin kutusuna atılan ad ve soyadın alt alta gelmesi

Metin kutusuna atılan ad ve soyadın alt alta gelmesi

Çözüldü #1
Arkadaşlar
Hegu'nun sorusuna benim Tc Kimlik Sorgulama örneğimi eklemek istiyoruz. Ben ekledim ama bir sorunum var. Tc Kimliğini yazdığımız kişinin ad ve soyad bilgileri ayrı ayrı geldiği için adı soyadı alanında birleştirmek istiyorum. Bunun için şu yöntemleri denedim:

1- trim() kullanarak boşluklarını aldım. Belki boşluk nedeniyle alt satıra atıyordur diye düşündüm ama ilgisi yok.

2- Bana gerekli verileri mevcut metin içerisinden instr$ ile aldığım için bir de instr ile almayı denedim. Durum değişmedi.

3- Verileri değişkenlere gönderdim. ad1 ve ad2 değişkenlerine aldığım verileri daha sonra hem & ile hem de + ile birleştirmeyi denedim sonuç yine değişmedi.

4- Verileri form üzerindeki başka metin kutularına ve etiketlere aktardım. Daha sonra ad ve soyad metinkutularını veya etiketlerini bir başka metin kutusunda ve etikette birleştirdim yine olmadı.

5- Ad ve soyad değerlerini değişkenden form üzerindeki iki metin kutusuna aktardım sonra da metin kutularından tekrara bir değişkene aktardım. Onu da msgbox ile ekrana getirdim. Msgbox penceresinde bile değer alt alta görüntülendi.

6- Acaba gelen ad ve soyad bilgisi benim bilmediğim bir şekilde sayı olarak mı algılanıyor diye Img-grin str() kullandım. Tabii ki hata verdi çünkü değerler string biçimdeydi.

Daha bir sürü yol denedim. Bir yeri atladım ama nereyi atladığımı bulamıyorum. Sonuç olarak neden böyle olduğunu anlayamadım. Ne dersiniz?
Örnek ekledim. Tc kimlik alanına bir tc nosu yazığ sorgulayın ve çıkan değerleri "aktar ve kapat" butonuyla ana forma aktarın. Göreceğiniz gibi Ad ve Soyad alt alta geliyor.
.rar Sağlık Kurulu_tckimlik.rar (Dosya Boyutu: 170,69 KB | İndirme Sayısı: 8)
Cevapla
Çözüldü #2
Hem adı, hemde soyadının sonuna Alt+Enter'a tekabül eden, 2 karakter birden konmuş. ( Chr(13) & Chr(10) )
"Aktar ve Kapat" butonundaki ilgili kodları aşağıdaki şekilde değiştirince sorun kalmıyor.
Kod:
ad1 = Left$(Me.adi, Len(Me.adi) - 2)
ad2 = Left$(Me.soyadi, Len(Me.soyadi) - 2)
adsad = ad1 & " " & ad2

Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla
Çözüldü #3
Teşekkürler Seruz
Yardımlarınla hallettim.
Cevapla
Çözüldü #4
Kod:
Private Function Duzenle(ByRef str1, ByRef str2)
  str1 = Replace(str1, Chr(13), "")
  str1 = Replace(str1, Chr(10), "")
  str2 = Replace(str2, Chr(13), "")
  str2 = Replace(str2, Chr(10), "")
End Function

çağırırken de
Kod:
ad1 = Me.adi
ad2 = Me.soyadi
Duzenle ad1, ad2

şeklinde kullanmak yeterli olacaktır.

İlk önce soruya bakıp çözmüştüm. Sonradan cevap yazarken yazılanları okudum.
Img-grin
Seruz hocanın yazdığı kod doğru. chr(13),chr(10) da doğru, son 2 karekteri silersek bu da doğru ve hızlı. Fakat ileride başına da koyarlarsa gibi bir sıkıntı olabilir. Bu kod onu da kapsar. Ha dersen ki yaparlar mı böyle birşey sanmıyorumImg-grin ama yazmış bulundum kodu savunuyorumLol
Bana işe yarayan bir müdür göster,sana dünyayı yerinden oynatayım.
                                                                                        Descartes


Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task