Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı
Tarih
11/01/2011 14:48
Konu Sahibi
OWNN
Yorumlar
6
Okunma
2640
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



OWNN
Üye
Kullanici Avatari
Üye
4
1
31/12/2010
0
Adana
Ofis 2000
02/12/2015,21:51
Çözüldü 
Selamlar;
Bir Soru bankası programı hazırlıyorum. Form vasıtası ile kullanıcı şıklardan birisini seçiyor..
Form üzerinde seçenek grubu ile şıkları gösteriyorum. (aynı anda birden fazla seçeneği seçememesi için..) ancak seçenek grubundan seçimler 1-2-3-4 gibi sayı dönüyor. Bana ise a,b,c,d gibi şık dönsün istiyorum ki daha sonradan küçük bir sorgu ile kaç doğru kaç yanlış var özet alalcağım.
secenek grubundan 1,2 dönsün sonradan tablo içinde 1 leri a yap 2 leri b yap gibi bir güncelleştirme sorgusu ile değiştiririm derken Access hata veriyor.. Lütfen Yardım..
Örnek dosya ekte...

tşk


Ek Dosyalar
.rar   vt-1.rar (Dosya Boyutu: 116,17 KB / İndirme Sayısı: 11)
Cevapla


ozanakkaya
sledgeab
Kullanici Avatari
Kurucu
O.... A....
9.023
29/01/2008
Denizli
Memur
Ofis 2010 32 Bit
Bugün,06:11
Çözüldü 
Sorular isimli tablonuza yeni alan ekleyin, mesela "yaziylacevap"

Test isimli forma bu yeni alanın bulunduğu metin kutusu ekleyin, metin kutusunun adını ve denetim kaynağını yine "yaziylacevap" olarak belirle.

Test isimli formun geçerli olduğunda olayına Komut76'ya yazdığınız kodların;

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
If Me.KullaniciCevap = 1 Then
            Me.yaziylacevap.Value = "A"
            End If
            If Me.KullaniciCevap = 2 Then
            Me.yaziylacevap.Value = "B"
            End If
            If Me.KullaniciCevap = 3 Then
            Me.yaziylacevap.Value = "C"
            End If
            If Me.KullaniciCevap = 4 Then
            Me.yaziylacevap.Value = "D"
            End If


kısmını yazın.

bu şekilde sizin seçenek olarak belirleyeceğiniz sayı "yaziylacevap" alanına yazı olarak aktarılacak.

siz kullanacağınız sorguda a,b,c,d yazan "yaziylacevap" alanını kullanın.

Tabiki bunun farklı yolları da var. Farklı yol belirtmek isteyenlere duyrulur... Img-grin

Cevapla


OWNN
Üye
Kullanici Avatari
Üye
4
1
31/12/2010
0
Adana
Ofis 2000
02/12/2015,21:51
Çözüldü 
hocam ilginiz için teşekkürler ancak;

1- bu kodu hangi olayın altına yazmalıyım..?
2- kullanacağım formun son tasarımı size gönderdiğim gibi. Access konusunda pek iyi değilim. bir metin kutusuna değilde benim örnekteki tabloya direk yazdırabilirmiyiz...?orada da söyle bir sıkıntı olur zaten form orqaya 1-2 yazacak onu tekrar nasıl değiştirecek..?
en temizi güncelleştirme sorgusu sanki.. formun kapanması olayında çalıştırabilirm. ancak onda da biçim tutarsızlığı gibi bir hata alıyorum. sorgunun tasarım ekranında 4 tane iç içe geçmeli IIF kullandım..?

IIf([Sorular]![KullaniciCevap]=1;"A";IIf([Sorular]![KullaniciCevap]=2;"B";IIf([Sorular]![KullaniciCevap]=3;"C";IIf([Sorular]![KullaniciCevap]=4;"D";"değil"))))


lütfen yardım?
tşk
Cevapla


ozanakkaya
sledgeab
Kullanici Avatari
Kurucu
O.... A....
9.023
29/01/2008
Denizli
Memur
Ofis 2010 32 Bit
Bugün,06:11
Çözüldü 
(11/01/2011, 15:50)OWNN Adlı Kullanıcıdan Alıntı: 1- bu kodu hangi olayın altına yazmalıyım..?
2- kullanacağım formun son tasarımı size gönderdiğim gibi. Access konusunda pek iyi değilim. bir metin kutusuna değilde benim örnekteki tabloya direk yazdırabilirmiyiz...?orada da söyle bir sıkıntı olur zaten form orqaya 1-2 yazacak onu tekrar nasıl değiştirecek..?

1-
(11/01/2011, 15:26)sledgeab Adlı Kullanıcıdan Alıntı: Test isimli formun geçerli olduğunda olayına Komut76'ya yazdığınız kodların;

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
If Me.KullaniciCevap = 1 Then
            Me.yaziylacevap.Value = "A"
            End If
            If Me.KullaniciCevap = 2 Then
            Me.yaziylacevap.Value = "B"
            End If
            If Me.KullaniciCevap = 3 Then
            Me.yaziylacevap.Value = "C"
            End If
            If Me.KullaniciCevap = 4 Then
            Me.yaziylacevap.Value = "D"
            End If


kısmını yazın.

2. mesaja yazdığım gibi, geçerli olduğunda olayına yazacaksın.
2:
(11/01/2011, 15:26)sledgeab Adlı Kullanıcıdan Alıntı: Test isimli forma bu yeni alanın bulunduğu metin kutusu ekleyin, metin kutusunun adını ve denetim kaynağını yine "yaziylacevap" olarak belirle.
metin kutusuna eklenecek veriler tablodaki "yaziylacevap" alanına kaydedilecek.


Ama, güncelleştirme sorgusu ile verilerin tamamını değiştirmek istiyorum diyorsan sorgudaki IIF olayından vazgeç.

Yeni bir modül oluştur ve modüle

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
Public Function VeriGuncelle(Sayi) As String
    Dim Yaziyla As String
    Select Case Sayi
        Case "1": Yaziyla = "a"
        Case "2": Yaziyla = "b"
        Case "3": Yaziyla = "c"
        Case "4": Yaziyla = "d"
    End Select
VeriGuncelle = Yaziyla
End Function


kodlarını yazıp modülü kaydet.

Güncelleme sorgun olan "Sorular Sorgu1" sorgusunu tasarım görünümünde aç.

Kod:
Alan: KullaniciCevap
Tablo: Sorular
Güncelleştir:  VeriGuncelle([KullaniciCevap])
Ölçüt: Is Not Null


şeklinde değiştir.

Cevapla


OWNN
Üye
Kullanici Avatari
Üye
4
1
31/12/2010
0
Adana
Ofis 2000
02/12/2015,21:51
Çözüldü 
hocam süpersin... sorgu değilde bir alan daha eklemek daha mantıklı senin de dediğin gibi. son olarak geçerli olduğu olayı ne demek..? formun gotfocus event i mi...? kodu neyin altına yazacağımı bulamadım. sürekli çalışsın istiyorum...?
Cevapla


ercansahin
BlackEagle
Kullanici Avatari
Uzman
E.... Ş....
3.733
14/11/2008
Ankara
Ofis 2010 32 Bit
Dün,21:33
Çözüldü 
Formun özelliklerine geçtiğinizde Geçerli Olduğunda özelliğinin varlığını görebilirsiniz.
Kod bölümünde ise ;

Visual Basic Code
Private Sub Form_Current()
'Buraya eylemi gerçekleştirecek kodlar yazılır.
End Sub

olarak kullanılır.

Sledgeab hocamın belirttiği kodları ise;

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub Form_Current()
            If Me.KullaniciCevap = 1 Then
            Me.yaziylacevap.Value = "A"
            End If
            If Me.KullaniciCevap = 2 Then
            Me.yaziylacevap.Value = "B"
            End If
            If Me.KullaniciCevap = 3 Then
            Me.yaziylacevap.Value = "C"
            End If
            If Me.KullaniciCevap = 4 Then
            Me.yaziylacevap.Value = "D"
            End If 
     End Sub

şeklinde kullanabilirsiniz.

Cevapla







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  Güncelleştirme Sorgusu Çalıştırınca Kayıt Kilit Hatası Hakkında shalala 2 51 23/11/2016, 00:39 shalala
  Access Formda Tümünü Seç Özelliği Nasıl Eklenir? mehami 5 189 16/11/2016, 21:35 mehami
  Access Sorguda Yaş ve Yaş Grubu Hesaplama accessdelisi 4 197 31/07/2016, 19:56 ozanakkaya
  union sorgusu accessmeraklı 7 570 13/07/2016, 21:53 atoz112
  Arama Sorgusu notrino 2 312 21/06/2016, 16:04 notrino


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