tablolarda işlemler

03/09/2010, 15:26

accessman

iyi günler
üç adet tablo var
birinde sayılar
birinde formuller
diğerinde işaretler
yapmak istediğim şey ise

bunları kullanarak yaptığım metin cümlesini dördüncü bir tabloya yazmak
nasıl mı
sayılar tablosunda diyelim ki
4,5,6,8,7,50 var
formulde
(a + b + c) * (d + e + f) olsun
işaretlerdede
+ , - , + , / , * olduğunu kabul edelim
bunlarla şöyle bir metin oluşturup
(4 + 5 -6) + (8 / 7 * 50)
bunun eval ile değerini bulup
dördüncü bir tabloaya kaydedeceğim
dördüncü tabloda
kullandığım sayıları
formulleri
işaretleri
enson oluşan metni (bu örnek için "(4 + 5 -6) + (8 / 7 * 50)"
eval ile bulduğumuz sonucu saklayacağız
bunları form üzerinde sadece komut düğmesi olacak şekilde yapacağız
yani listeler metin kutuları olmadan
form12 deki koda benzer bir kod ile
işlem "adon4" tablosunun ilk kaydından başlayıp son kaydına kadar gidecek
sonuçta döngü ile
adon4 tablosunun her kaydını
formuller tablosunun her kaydı ve
formull tablosunun her kaydı ile işleme tabi tutacağız
elde edilen evel ile bulduğumuz sonuç 100 ile 1000 arasında ise dördüncü tabloya kaydedeceğiz
umarım anlaşılmıştır
teşekkürler
04/09/2010, 13:49

accessman

iyi günler yukarıda anlatmaya çalıştığım işlemin çoğunu halletmiş bulunuyorum
ama takıldığım bir kaç nokta var
üç tablodaki kayıtlara göre metin oluşturup
dördüncü metinler tablosuna
formulu ve sonucunu yazdırıyorum
ama "/" işareti olduğu için bazı işlemler
"divion by zero" uyarısı veriyor
zaten bende böyle olacağını biliyordum
fakat nasıl yapmalıyım ki bu uyarıyı verecek bir kombinasyon olduğunda
uyarıyı vermeden bir sonraki işlem geçsin
ilgilenen arkadaşlar ilk önce sorgu ile metinler tablosunu temizleyip
sonra form6 daki butonu kullanarak
metinler tablosunu oluştursun
yardımlarınız için teşekkürler
04/09/2010, 15:06

accessman

yardımcı olacak olan varmı acaba
04/09/2010, 23:46

alpeki99

Sayın accessman sen flood yapma bari
Kod:
İki metin kutusu bir buton (metin1,metin2,komut1)

Butonun tıklanma olayına:

on error goto hata_var

   sonuc = metin1 / metin2

hata_var:
   if err.number = 11 then
      msgbox "Sıfıra bölme hatası işlemleri burada
   else
      msgbox "Diğer hatalar ile ilgili işlemler buraya"
   end if
05/09/2010, 07:47

accessman

teşekkürler alpeki99
ellerinize sağlık