• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

KOŞULA GÖRE ÇALIŞAN MAKRO

  • Konbuyu başlatan Konbuyu başlatan oerbas
  • Başlangıç tarihi Başlangıç tarihi
Katılım
8 Ekim 2004
Mesajlar
317
Excel Vers. ve Dili
EXCEL 2003 TÜRKÇE
KOÞULA GÃ?RE ÇALIÞAN MAKRO

TextBoxlara girdiğim rakamın stoktan düşülmesini istiyorum.Bu işlem için Aşağıdaki kodu kullanıyorum ama biraz daha geliştirmek istiyorum.

İlgili TextBoxlara veri girilip geçilince MsgBox aracılığı ile Bu kayıt stoktan düşülsünmü diye sorulmasını istiyorum. Eğer Evet diyerek geçilirse Aşağıdaki Kod çalışsın eğer hayır diyerek geçilirse birşey olmadan işlem yapılmaya devam edilsin.


Evet diyerek geçilince devreye girmesi gereken Kod:

Kod:
Private Sub CommandButton2_Click()
'Stok Kod Numarasının yazılmaması halinde kayıt işleminin yapılmaması için uyarı
If kod1.Value = "" Then
Soru = MsgBox("Stok Kod No Yazmazsanız Kayıt İşlemi Gerçekleşmez.Devam Edeyimmi?", vbYesNo, "Stok Kod")
kod1.SetFocus
If Soru = vbYes Then GoTo devam
If Soru = vbNo Then Exit Sub
End If
'Stoktan düşülecek Mal Adedini  yazmadıysa
If adet1.Value = "" Then
Soru = MsgBox("Stoktan düşülecek Mal Adedini Yazmazsanız Kayıt İşlemi Gerçekleşmez.Devam Edeyimmi?", vbYesNo, "Mal Adedi")
adet1.SetFocus
If Soru = vbYes Then GoTo devam
If Soru = vbNo Then Exit Sub
End If

devam:
Set s1 = Sheets("stok")
noA = WorksheetFunction.CountA(s1.Range("a:a"))
For i = 1 To noA
 If s1.Cells(i, "b") = Val(kod1) Then
 s1.Cells(i, "e") = s1.Cells(i, "e") + adet1.Value
              
       MsgBox "Kayıt İşlemi Tamamlandı"

Exit Sub
End If
Next i
MsgBox "Aradığınız isimde bir kayıt bulunamadı", vbCritical, "KAYIT"
Sheets("stok").Select
End Sub

NOT: Bu Kod bir Command butona bağlı ama ben bu kodu TextBoxlara bağlayacağım. UserForm İntialize olayına bağlsam olurmu?

Yardımcı olursanız sevinirim
 
HÜCREDEKÝ DEÐER SIFIR OLDUÐUNDA ÇALIÞMA

bir hücredeki değer sıfıra eşit olduğunda makromun çalışmasını istiyorum.Çünkü bazen manual olarak çalıştırdığım makroyu çalıştırmayı unutabiliyorum.Buda bana ek yük getiriyor.yardımcı olursanız çok sevinirim.
 
Aşağıdaki şekilde deneyiniz. Kodu hücre değerinin bakılacağı sayfanın kod sayfasına yazınız. Koda referans hücreyi ve çalıştırılacak makronun adını yazınız.

[vb:1:32f95ee431]Private Sub Worksheet_Change(ByVal Target As Range)
If [a1] = 0 Then Call makroadı
End Sub
[/vb:1:32f95ee431]
 
Bunu istediğiniz bir olay yordamının altına yazınız !
[vb:1:2356df8bd9]
Private Sub CommandButton1_Click()
Select Case Range("A1").value
Case 0
Call makro
End Select
End Sub
[/vb:1:2356df8bd9]
 
teşekkürler.Makro çok güzel çalışıyor.Yalnız sayfadaki bir hücreye girip çalıştırdığımda referans hücrem 0 olduğundan tekrar çalışıyor.bunu engelleyebilirmiyim.Yada bu olmasa bile makro çalıştıktan sonra veri girişini engelleyip çalışma kitabını açarken tekrar veri girişine izin verebilirbiyim?
 
Kodu aşağıdaki ile değiştirerek deneyiniz.
[vb:1:007bf04938]Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Address = "$A$1" And [a1] = 0 Then Call makroadı
End Sub
[/vb:1:007bf04938]
 
Geri
Üst