modülü nasıl seçenekli hale getiririm

Katılım
16 Şubat 2007
Mesajlar
323
Excel Vers. ve Dili
office 2003 prof.tr
Soru 1;
açılır kutu (Combo Box) ile listelediğim bir alana güncelleme sonrasında gerçekleştirmesini istediğim aşağıdaki kodu yazdım ancak bu işlem sonrasında sadece "tamam" seçeneği olan mesaj kutusu çıkıyor. oysa ben "evet" ve "hayır" seçenekli bir mesaj kutusunun gelmesini ve eğer evet'i seçersem yeni veriyi listeme eklemesini, hayır'ı seçersem listeye eklemesin istiyorum. bu işlem için aşağıdaki kodu nasıl düzenlemem gerekiyor?

If MsgBox("Yazılan değer listede yok. Eklensin mi?") = vbNo then exit sub
Dim db As Database
Set db = CurrentDb
db.Execute "insert into TABLO1(ALAN1) values (" & AcilanKutu1.Text & ")"
'db.Execute "insert into TABLO1(ALAN1) values (' " & AcilanKutu1.Text & " ')"
'Eger kayit girilecek alan sayi degil de metin ise 2. satiri kullanin.
'Acilan kutudaki yeni metin ilgili tabloya eklenecek.
'TABLO1(ALAN1) yerine hangi tablonun hangi alanina ekleme yapilacaksa
'onlari yazin. KISILER(AdiSoyadi) gibi. tablo ya da alan isimleri
'hata verirse basina ve sonuna koseli parantez ekleyin.
'[kisi adlari tablosu]([adi soyadi]) gibi.
Dim deger
deger = AcilanKutu1.Text
AcilanKutu1.Undo
AcilanKutu1.Requery
Response = acDataErrAdded
'yeni kaydi ben simdi ekledim. hatayi yoksay.
AcilanKutu1.Value = deger


Soru 2;
Modüller bölümünde hazırladığım bir kodu formlar bölümündeki bir form üzerine yerleştirdiğim komut düğmesine tıkladığım zaman çalışmasını nasıl sağlayabilirim. ben bu işlemi; modüller bölümünde kodu açıyorum ve "run" tuşuna basarak yapıyorum. oysa formdaki komut düğmesine tıkladığımda yapması benim işimi kolaylaştıracak. bunun için komut düğmesine hangi kodu yazmam gerekiyor.

cevaplarınızı bekliyorum. saygılarımla
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın abkbek,

Mesaj kutusunun genel yazımı şu şekilde:

MsgBox(prompt[, buttons] [, title] [, helpfile, context])

buttons denilen yere sayılar yazılıyor ve bu sayılara göre ise buton kombinasyonu oluşuyor.

Gerçi Accessin yardımından alıp yapıştırıyorum ve İngilizce ama sanırım bir fikir verir:

vbOKOnly 0 Display OK button only.
vbOKCancel 1 Display OK and Cancel buttons.
vbAbortRetryIgnore 2 Display Abort, Retry, and Ignore buttons.
vbYesNoCancel 3 Display Yes, No, and Cancel buttons.
vbYesNo 4 Display Yes and No buttons.
vbRetryCancel 5 Display Retry and Cancel buttons.
vbCritical 16 Display Critical Message icon. vbQuestion32Display Warning Query icon.
vbExclamation 48 Display Warning Message icon.
vbInformation 64 Display Information Message icon.
vbDefaultButton 10 First button is default.
vbDefaultButton 2256 Second button is default.
vbDefaultButton 3512 Third button is default.
vbDefaultButton 4768 Fourth button is default.
vbApplicationModal 0Application modal; the user must respond to the message box before continuing work in the current application.
vbSystemModal 4096 System modal; all applications are suspended until the user responds to the message box.
vbMsgBoxHelpButton 16384 Adds Help button to the message box
VbMsgBoxSetForeground 65536 Specifies the message box window as the foreground window
vbMsgBoxRight 524288 Text is right aligned
vbMsgBoxRtlReading 1048576 Specifies text should appear as right-to-left reading on Hebrew and Arabic systems

Yani Evet ve Hayır için 4 ü kullanmanız gerekir.


İkinci sorunuz için ise Call YordamAdı şeklindeki kod yeterli. Call ı da yazmayabilirsiniz ama siz yine de kullanın.

İyi çalışmalar:)
 
Katılım
16 Şubat 2007
Mesajlar
323
Excel Vers. ve Dili
office 2003 prof.tr
birinci sorun devam ediyor

Sayın Modalı ;
Soruya gösterdiğiniz ilgi ve nezakete karşı duyduğum minnet ve şükranı uzun uzun ifade etmeyi istiyorum ancak forumda sorularını cevapladığınız arkadaşların teşekkür mesajlarına karşı ortaya koyduğunuz mütevazilik dolu karşılıklardan dolayı sizi de rahatsız etmek istemiyorum. Ama yinede çok çok teşekkür ederim.
ikinci soruma verdiğiniz cevap problemimi çözdü ancak birinci sorudaki ilgili yere önerdiğiniz "vbYesNo" ifadesini koydum ancak forma dönüp çalıştırdığımda gelen mesaj kutusunda herhangi bir değişiklik olmadı, acaba birşeyi eksik mi yapıyorum. ayrıca yukarıdaki seçeneklerden birkaç tanesini daha denedim ama mesaj kutusu hep değişmeden geliyor.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın abkbek,

Yanlış anladınız

Kod:
If MsgBox("Yazılan değer listede yok. Eklensin mi?",4) = vbNo then exit sub
olarak değiştirip deneyin. Burada anahtar 4

İyi çalışmalar:)
 
Katılım
16 Şubat 2007
Mesajlar
323
Excel Vers. ve Dili
office 2003 prof.tr
Size müteşekkirim

Sayın modalı,
inanın bir çocuk gibi sevindirdiniz beni, en içten duygularımla çok teşekkür ederim. size de çalışmalarınızda başarılar dilerim.
Kodlarla ilgili temel bilgileri nereden bulabilirim. Acces'in kendi yardım menülerinde var ama ingilizcem çok iyi olmadığından anlamakta güçlük çekiyorum. forumda konu hakkında birkaç tane ders notu gönderen arkadaşın notlarını da inceledim ama bunlar belirli bir seviyeden başladığından mantığını anlamakta güçlük çekiyorum. bu işe yeni başlayan ve yeterince aşina olmayan biri için bir öneriniz var mı?
 
Üst