Barkoda Bağlı Stok Takip Programı Hatası

Katılım
16 Kasım 2022
Mesajlar
3
Excel Vers. ve Dili
2022
Arkadaşlar merhaba, foruma yeni geldim. Yeni vba öğrenmeye çalışıyorum. Barkoda bağlı bir hızlı satış programı yaptım. Projemi tamamladığımda barkodu her okuttuğumda stoğumdan ilgili ürüne gidip ilgili ürünün stoğundan 1 adet stok azaltarak ürün stoğumu kontrol etmek istiyorum.




Barkod okuyunca stoktan düşmek için denediğim kodlar şu şekilde ancak hiçbir faydasını göremedim,
Kod:
Sub STOK_AZALT()

    Dim x As Long
    Dim sttok As Worksheet
    Dim seppet As Worksheet 'stok satır sayısı
    Dim ss As Worksheet
    Dim gg As Long 'sepet satır sayısı

Set sttok = Sheet("STOK")
ss = sttok.Range("A10000").End(xlUp).Row

Set seppet = Sheet("SEPET")
gg = seppet.Range("A10000").End(xlUp).Row

For x = 2 To ss
sttok.Range("I" & x).Value = Application.WorksheetFunction.SumIfs(seppet.Range("C:C"), stok.Range("A" & x).Value, seppet.Range("A:A"))
sttok.Range("G" & x).Value = sttok.Range("H" & x).Value - sttok.Range("I" & x).Value
Next

Set sttok = Nothing
Set seppet = Nothing

 
End Sub

Bir diğer deneyip de faydasını göremediğim kod şu şekilde

Kod:
Sub STOK_AZALT()
Dim stk As Label
 Dim x As Long
 Dim i As Long
For x = 2 To 120000
For i = 2 To 120000
 If Sheets("SEPET").Range("A" & x).Value <> "" Then GoTo stk
 If Sheets("SEPET").Range("A" & x).Value = "" Then Exit For
stk:
 If Sheets("STOK").Range("A" & i).Value = Sheets("SEPET").Range("A" & x).Value Then
 Sheets("STOK").Range("G" & i) = Sheets("STOK").Range("G" & i) - Sheets("SEPET").Range("F" & x)
 Sheets("SEPET").Range("A" & x).Value = ""
 End If
 Next i
 Next x
End Sub
For döngüsüyle stok rangeinden - 1 inerek 0 a kadar gitmeyi denedim o da olmadı. if le bir şeyler denedim o da olmadı. Ne yapsam olmadı. Yardımlarınıza ve engin bilgilerinize şu an çok ihtiyacım var. Vereceğiniz cevaplar için şimdiden teşekkür ediyor, herkese iyi forumlar diliyorum.
 
Katılım
16 Kasım 2022
Mesajlar
3
Excel Vers. ve Dili
2022
Arkadaşlar merhaba barkoda bağlı stok takip programımdaki Debugları halen aşamadım, Başka bir for döngüsünü şu şekilde denedim ama yine olmadı Kalın ve italik yazdığım yerde Obje tanımlanmadı 1004 hatası alıyorum, nerede hata yapıyorum acaba, saygılar


Private Sub txtMiktar_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 And IsNumeric(txtMiktar.Text) Or IsNumeric(txtMiktar.Text) < 10000 Then
txtTutar.Value = txtMiktar.Value * txtFiyat.Value

For b = 10000 To 2
If Sheets("SEPET").Range("A" & x).Value = Sheets("STOK").Range("A" & x).Value Then
For i = 10 To 5 Step -1
Sheets("STOK").Range("G" & i) = Range("H" & i) - 1

Next i
End If
Next b

SEPETE_EKLE

End If
End Sub
 
Üst