Onay kutusu ile değer alma
Tarih
21/11/2008 01:06
Konu Sahibi
onur_can
Yorumlar
5
Okunma
2721
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



onur_can
Üye
Kullanici Avatari
Üye
22
8
08/11/2008
0
Tokat
Ofis 2010 32 Bit
17/10/2016,22:37
Çözüldü 
Arkadaşlar kolay gelsin ekte hazırlamış olduğum dosyada 1 metin kutusu 4 adet onay kutusu var ilk başta form açıldığında onay kutuları boş sorum Şu: 1.onay kutusunu işaretlediğimde metin kutusuna onay kutusunun etiketini yazması burda sorun yok ikinci onay kutusunu işaretlediğimde metin kutusuna hem 1. hemde 2.onay kutusunun etiketini yazacak. (1. ve 2.işaretli) Özetle şöyle diyebilirim hangi onay kutuları seçili ise metin kutusuna yan yana bu onay kutularının etiketlerini yan yana aralarında virgül olacak şekilde yazacak, hangisinide iptal edersem onu silecek.
yardımlarınız için teşekkürler...
kolay gelsin.


Ek Dosyalar
.rar   onay kutusu ile değer alma.rar (Dosya Boyutu: 11,92 KB / İndirme Sayısı: 32)
 İyi olan tek şey bilgi ve kötü olan tek şey de cehalettir. (Sokrates)



Web Site Hazırlama Rehberi 


C*e*l*o*y*c*e
Celosoft Yazılım
Kullanici Avatari
Uzman
M.... B....
2.813
29/10/2008
899
Ankara
Ofis 2010 32 Bit
Bugün,01:25
Çözüldü 
arkadaşım eklemeyi yaptım ama çıkarmayı yapamadım,bundan gidebilirsin,ayrıca diğer hocalar mutlaka cevap vereciktir, kolay gelsin


Ek Dosyalar
.mdb   onay kutusu ile değer alma-celoy.mdb (Dosya Boyutu: 116 KB / İndirme Sayısı: 63)


mehmetdemiral
.
Kullanici Avatari
Uzman
M.... D....
4.734
30/10/2008
Samsun
Ofis 2013 Tr. 32 Bit
Bugün,00:14
Çözüldü 
Bence kodları şöyle değiştirin

Private Sub Onay0_Click()
If Onay0 Then
Metin2 = "Ali" & ","
Else
Me.Onay0.Requery
End If
End Sub

Private Sub Onay1_Click()
If Onay1 Then
Metin2 = (Metin2) & "Ahmet" & ","
Else
Me.Onay0.Requery
End If
End Sub

Private Sub Onay2_Click()
If Onay2 Then
Metin2 = (Metin2) & "Bahri" & ","
Else
Me.Onay1.Requery
End If
End Sub

Private Sub Onay3_Click()
If Onay3 Then
Metin2 = (Metin2) & "Mesut" & ","
Else
Me.Onay2.Requery
End If
End Sub


Böylece ilk olarak onay0 basılmazsa

,Ahmet

şeklinde yazılmasını önlersiniz. Virgül her zaman sona atılabilir. Ama başta olması çirkin olur

Bu arada çıkarma işlemi sanıldığı kadar basit değil. Mid komutuyla metin2 içindeki istenen değerin bulunması gerekiyor. Onayı kaldırılmak istenen değer ile metin2 içindeki değer karşılaştırılarak yakalnması gerekiyor. Şu andaüzerinde çalışıyorum. Halledebilirsim yollayacağım.
İnadına, ille de Accesstr.net...


onur_can
Üye
Kullanici Avatari
Üye
22
8
08/11/2008
0
Tokat
Ofis 2010 32 Bit
17/10/2016,22:37
Çözüldü 
Arkadaşım Çook Teşekkürler, Ellerine sağlık,
Bu bilgiden yola çıkarak kalan kısmı tamamlamaya çalışacağım.
İyi Çalışmalar dilerim... Halay
 İyi olan tek şey bilgi ve kötü olan tek şey de cehalettir. (Sokrates)



Web Site Hazırlama Rehberi 


mehmetdemiral
.
Kullanici Avatari
Uzman
M.... D....
4.734
30/10/2008
Samsun
Ofis 2013 Tr. 32 Bit
Bugün,00:14
Çözüldü 
Yalnız dediğim gibi.. Görüldüğü kadar kadar olmayacak. Önce isterseniz kodları tek tek açıklayarak mantığını kuralım. Belki bizim ustalar da yardım ederler bize..

If Onay0 Then
'(eğer onay0 basıldıysa)

Metin2 = (Metin2) & "Ali" & ","
'(metin2'ye içeriğiyle bilikte "Ali," ekle)

Else
'(değilse)

For i = 1 To Len(Metin2)
'(metin2 değerini belirlenen yere kadar okumaya başla)

If Mid(Me.Metin2, i, Len("ali")) = "ali" Then
'(eğer metin2'nin içinde "ali" değeri bulunursa)

s = i
'(s değişkenini ali'nin bulunduğu sıraya (yani i'ye) ata)

End If
'(if işlemi bitsin)

Next
'(işleme dön)

MsgBox "burası başlangıç " & s
'(aranan değerin başlama sırası ekrana yazıldı)

m = Len("ali")
'("ali" isminin karakter sayısı toplamı(kaç karakterlik ilerlenecek diye))

MsgBox "burası da sonu " & m
'(aranan alanın bitiş karakter sırası ekranda)

End If
End Sub


Şimdi böylece ilk kutunun onayını kaldırdığınızda kaldırdığınız onay kutusunun gönderdiği değerin metin kutusu içindeki kaçıncı karakter sırasında başladığını ve len komutuyla aldığımız karakter kadar ilerde bittiğini öğrendik. "Ali" ismi diyelim Ahmet ve Bahri'den sonra yeralıyor. Bu durumda Ali'nin onayını kaldırdığınızda başlama noktası olarak 13 değeri gelecektir. Bu değer Ahmet(5)+virgül(1)+Bahri(5)+Virgül(1)=12 olduğuna göre Ali'nin 13 'den başladığı anlamına gelir. 13'ten sonra Ali ve virgül kadar (yani 4 karakter) ilerlenecek.
O halde metin2 değerini bir değişkene atarken bu alanı almayacağız. Yeni oluşan değişken de metin2'nin yerine geçerek güncellenmiş olacaktır. Tabii bu işlemi tüm onay kutuları için yapmak lazım. Ve her onay kalktığında alttan bu komutların çalışması ve metin2 alanını güncellemesi lazım..

Kolaymış değil mi? Img-grin))
İnadına, ille de Accesstr.net...


mehmetdemiral
.
Kullanici Avatari
Uzman
M.... D....
4.734
30/10/2008
Samsun
Ofis 2013 Tr. 32 Bit
Bugün,00:14
Çözüldü 
Bu arada, değişkene aktarılacak değerin de alınacak bölüm ve alınmayacak bölüm olarak parçalanması lazım. Bunun için de mid komutunu kullanabiliriz. Tanımlanan a ve b değişkenlerine, alınmayacak olan az önceki mesajımda anlattığım kısım haricindekiler atanır. Mesela

Metin2 alanının içeriği ahmet,bahri,ali,mesut şeklinde sıralansın. Siz buradan ali'yi çıkartmak istediniz. O zaman yukarda anlattığım gibi, ali'nin başlangıç ve bitiş kısımlarını içermeyen bir aktarımla mid komutunu kullanarak a ve b değişkenlerine veri atarsınız.
teorik olarak şöyle bir şey:

a= mid (metin2, 1 , s)
b= mid(metin2, s , 21)
metin2= a & b
veya
metin2 = a + b

ok?
İnadına, ille de Accesstr.net...







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  Liste kutusu çift tıklama ile yeni form açmak nightashes 18 235 02/12/2016, 20:04 nightashes
  Dosya konumunu alma tufanbal 7 121 02/12/2016, 10:48 tufanbal
  Liste kutusu işlem yapma ekleme silme de sorun nightashes 7 102 29/11/2016, 20:24 nightashes
  Liste kutusu seçiminde debug oluşmakta nightashes 3 71 28/11/2016, 21:27 alpeki99
  Metin Kutusu Hk. Serkan Çevik 2 61 25/11/2016, 23:40 Serkan Çevik


Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2016 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya