Skip to main content

AccessTr.neT


Textboxlardan Veri Hesaplanıyor Ama Boş Olduğunda Hata Alıyorum

doriangray1907
doriangray1907
3
386

Textboxlardan Veri Hesaplanıyor Ama Boş Olduğunda Hata Alıyorum

Çözüldü #1
Merhaba;

Sorunum şu; textboxlardan dört işlem yapıyorum ama bazı durumlarda bu alanların boş kalması gerekiyor. Boş olduğunda da hata alıyorum. Boş olsa da hesaplama yapmadan devam etmesini istiyorum. Kaydet buton kodları aşağıdaki gibidir.
Yardımlarınızı rica ederim.



Private Sub btnKaydet_Click()

If txtStokAdi = "" Or cbTedarikci = "" Or cbBirim = "" Or txtGirisAdet = "" Then

MsgBox "Yeni stok kartı için istenilen tüm bilgilerin yazılması gerekmektedir."
Exit Sub

End If

stokDurumSS = Sheets("Stok_Durum").Range("A10000").End(xlUp).Row + 1
stokHareketSS = Sheets("Stok_Hareket_Durumu").Range("A100000").End(xlUp).Row + 1

Sheets("Stok_Durum").Range("A" & stokDurumSS) = txtID.Text
duzenlistok = Replace(txtStokAdi, "i", "İ")
duzenlistok = Replace(duzenlistok, "ı", "I")
Sheets("Stok_Durum").Range("B" & stokDurumSS) = UCase(duzenlistok)
Sheets("Stok_Durum").Range("C" & stokDurumSS) = cbTedarikci.Text
Sheets("Stok_Durum").Range("D" & stokDurumSS) = cbBirim.Text
Sheets("Stok_Durum").Range("E" & stokDurumSS) = CDbl(FormatNumber(txtGirisAdet.Value, 2))
Sheets("Stok_Durum").Range("G" & stokDurumSS) = CDbl(FormatNumber(txtGirisAdet.Value, 2))
Sheets("Stok_Durum").Range("H" & stokDurumSS) = Now
Sheets("Stok_Durum").Range("I" & stokDurumSS) = cmb_Kategori.Text
Sheets("Stok_Durum").Range("J" & stokDurumSS) = txt_Ebat.Text
Sheets("Stok_Durum").Range("L" & stokDurumSS) = txt_Urun_Kodu.Text
Sheets("Stok_Durum").Range("M" & stokDurumSS) = txt_Koli_Adet.Text
Sheets("Stok_Durum").Range("N" & stokDurumSS) = txt_Koli_Ebat.Text
Sheets("Stok_Durum").Range("O" & stokDurumSS) = Sheets("Stok_Durum").Range("E" & stokDurumSS) * Sheets("Stok_Durum").Range("Q" & stokDurumSS)
Sheets("Stok_Durum").Range("P" & stokDurumSS) = (txt_Boy.Value * Txt_En.Value) / 1000000
Sheets("Stok_Durum").Range("Q" & stokDurumSS) = txt_Tabaka_Kg.Text
Sheets("Stok_Durum").Range("R" & stokDurumSS) = txt_Tabaka_Kg.Value / Sheets("Stok_Durum").Range("P" & stokDurumSS)
Sheets("Stok_Durum").Range("S" & stokDurumSS) = txt_Boy.Text
Sheets("Stok_Durum").Range("T" & stokDurumSS) = Txt_En.Text
Sheets("Stok_Durum").Range("U" & stokDurumSS) = txt_Metrekare_Gram.Text

Sheets("Stok_Hareket_Durumu").Range("A" & stokHareketSS) = "SHID-" & Sheets("Tanimlamalar").Range("D2")
Sheets("Stok_Hareket_Durumu").Range("B" & stokHareketSS) = txtID.Text
Sheets("Stok_Hareket_Durumu").Range("C" & stokHareketSS) = UCase(duzenlistok)
Sheets("Stok_Hareket_Durumu").Range("D" & stokHareketSS) = cbBirim.Text
Sheets("Stok_Hareket_Durumu").Range("E" & stokHareketSS) = "Giriş"
Sheets("Stok_Hareket_Durumu").Range("F" & stokHareketSS) = CDbl(FormatNumber(txtGirisAdet.Value, 2))
Sheets("Stok_Hareket_Durumu").Range("G" & stokHareketSS) = 0
Sheets("Stok_Hareket_Durumu").Range("H" & stokHareketSS) = CDbl(FormatNumber(txtGirisAdet.Value, 2))
Sheets("Stok_Hareket_Durumu").Range("I" & stokHareketSS) = "Yeni Stok Kaydı"
Sheets("Stok_Hareket_Durumu").Range("J" & stokHareketSS) = Now
Sheets("Stok_Durum").Range("I" & stokDurumSS) = cmb_Kategori.Text
Sheets("Stok_Durum").Range("J" & stokDurumSS) = txt_Ebat.Text
Sheets("Stok_Durum").Range("L" & stokDurumSS) = txt_Urun_Kodu.Text
Sheets("Stok_Durum").Range("M" & stokDurumSS) = txt_Koli_Adet.Text
Sheets("Stok_Durum").Range("N" & stokDurumSS) = txt_Koli_Ebat.Text
Sheets("Stok_Durum").Range("O" & stokDurumSS) = Sheets("Stok_Durum").Range("E" & stokDurumSS) * Sheets("Stok_Durum").Range("Q" & stokDurumSS)
Sheets("Stok_Durum").Range("P" & stokDurumSS) = (txt_Boy.Value * Txt_En.Value) / 1000000
Sheets("Stok_Durum").Range("Q" & stokDurumSS) = txt_Tabaka_Kg.Text
Sheets("Stok_Durum").Range("R" & stokDurumSS) = Sheets("Stok_Durum").Range("Q" & stokDurumSS) / Sheets("Stok_Durum").Range("P" & stokDurumSS)
Sheets("Stok_Durum").Range("S" & stokDurumSS) = txt_Boy.Text
Sheets("Stok_Durum").Range("T" & stokDurumSS) = Txt_En.Text
Sheets("Stok_Durum").Range("U" & stokDurumSS) = txt_Metrekare_Gram.Text
Sheets("Tanimlamalar").Range("A2") = Sheets("Tanimlamalar").Range("A2") + 1
Sheets("Tanimlamalar").Range("D2") = Sheets("Tanimlamalar").Range("D2") + 1

MsgBox "Yeni stok kartı oluşturuldu."

Unload Me
frmStokKayit.Show

End Sub
Cevapla
#2
1 - benzeri bir yapı işinize yarayabilir
Me.TextBox3 = IIf(Len(Me.TextBox1 & "") = 0, 0, Me.TextBox1) + IIf(Len(Me.TextBox2 & "") = 0, 0, Me.TextBox2) * 2
2 - metin kutularının başlangıç değerleri 0 yapılabilir
3 - kod bloğunuzun başına on error resume next kod satırı eklenebilir
Cevapla
#3
teşekkürler hocam işime yaradı Img-grin
Cevapla
#4
rica ederim
iyi çalışmalar
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task