AccessTr.neT
Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı (/konu-guncellestirme-sorgusu-secenek-grubu-ozelligi-yardimi.html)

Sayfalar: 1 2


Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı - OWNN - 11/01/2011

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


Cvp: Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı - ozanakkaya - 11/01/2011

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;
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



Cvp: Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı - OWNN - 11/01/2011

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


Cvp: Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı - ozanakkaya - 12/01/2011

(11/01/2011, 15:50)OWNN yazdı: 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 yazdı: Test isimli formun geçerli olduğunda olayına Komut76'ya yazdığınız kodların;
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 yazdı: 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

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.




Cvp: Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı - OWNN - 14/01/2011

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...?


Cvp: Güncelleştirme Sorgusu - Seçenek Grubu özelliği yardımı - ercansahin - 14/01/2011

Formun özelliklerine geçtiğinizde Geçerli Olduğunda özelliğinin varlığını görebilirsiniz.
Kod bölümünde ise ;
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;
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.