• DİKKAT

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

iki sayfadanda aynı anda sil komudu

Buyurun.
Kod:
Private Sub CommandButton1_Click()
Dim s1 As Worksheet, s2 As Worksheet, c As Range, b, cc As Range, bb
Dim aranan
aranan = cbad2
Set s1 = Sheets("data_malzeme"): Set s2 = Sheets("envarter")
Set c = s1.Range("C:C").Find(aranan, LookIn:=xlValues)
Set cc = s2.Range("A:A").Find(aranan, LookIn:=xlValues)
If Not c Is Nothing Then
b = c.Row
Cells(b, 1).Select
s1.Range("A" & b & ":D" & b).Delete Shift:=xlUp
End If
If Not cc Is Nothing Then
bb = cc.Row
s2.Range("A" & bb & ":D" & bb).Delete Shift:=xlUp
End If
End Sub
 
Merhaba; ancak bakabildim çok güzel olmuş fakat ufak bir sıkıntı var data_malzeme sayfasında sıra no bozuluyor silme yapılınca.
 
İlgili kodun altına End Sub dan öncesine ekleyin.
Kod:
son = s1.Range("A" & Rows.Count).End(3).Row
s1.Range("A2").Select
s1.Range("A2").FormulaR1C1 = "=MAX(R1C:R[-1]C)+1"
Selection.AutoFill Destination:=s1.Range("A2:A" & son), Type:=xlFillDefault
s1.Range("A2:A" & son).Value = s1.Range("A2:A" & son).Value
cbad2 = ""
txtsira = ""
txtad = ""
 
Dim son tanımlandıktan sonra harika oldu ellerinize sağlık çok teşekkür ederim.
 
Üstadım yardımın için sana tekrar teşekkür ederim yalnız özel bir ricam olacak sizden uygun bir zamanınız olursa kodların ne anlama ve hangi amaçla kullanıldığını açıklaya bilirmisiniz acaba?
Private Sub CommandButton1_Click()
Dim s1 As Worksheet, s2 As Worksheet, c As Range, b, cc As Range, bb
Dim aranan
Dim son
aranan = cbad2
Set s1 = Sheets("data_malzeme"): Set s2 = Sheets("envarter")
Set c = s1.Range("C:C").Find(aranan, LookIn:=xlValues)
Set cc = s2.Range("A:A").Find(aranan, LookIn:=xlValues)
If Not c Is Nothing Then
b = c.Row
Cells(b, 1).Select
s1.Range("A" & b & ": D" & b).Delete Shift:=xlUp
End If
If Not cc Is Nothing Then
bb = cc.Row
s2.Range("A" & bb & ": D" & bb).Delete Shift:=xlUp
End If
son = s1.Range("A" & Rows.Count).End(3).Row
s1.Range("A2").Select
s1.Range("A2").FormulaR1C1 = "=MAX(R1C:R[-1]C)+1"
Selection.AutoFill Destination:=s1.Range("A2:A" & son), Type:=xlFillDefault
s1.Range("A2:A" & son).Value = s1.Range("A2:A" & son).Value
cbad2 = ""
txtsira = ""
txtad = ""
End Sub
 
Kod:
Private Sub CommandButton1_Click() 
'Prosedure adı 
Dim s1 As Worksheet, s2 As Worksheet, c As Range, b, cc As Range, bb
Dim aranan
Dim son
'Tanımlamalar yapılıyor
aranan = cbad2
'aranan olarak malzeme adı tanımlanıyor.
Set s1 = Sheets("data_malzeme"): Set s2 = Sheets("envarter")
'Sayfa isimleri s1 ve s2 olarak isimlendiriliyor. Kod uzun olmasın diye 
Set c = s1.Range("C:C").Find(aranan, LookIn:=xlValues)
'Data malzeme sayfasında arama yapılıyor
Set cc = s2.Range("A:A").Find(aranan, LookIn:=xlValues)
'Envanter sayfasında arama yapılıyor
If Not c Is Nothing Then
'Bulunan değer boş değilse diye şart koşuluyor. Boş ise hiç bir işlem yapma.
b = c.Row
'Data malzeme sayfasında bulunan değerin satır numarası alınıyor.
Cells(b, 1).Select
'A sütununda bulunan satır seçiliyor.
s1.Range("A" & b & ": D" & b).Delete Shift:=xlUp
'A sütunu ile D sütunu arasında bulunan satırın verileri siliniyor.
End If
'şart bitiyor.
If Not cc Is Nothing Then
bb = cc.Row
s2.Range("A" & bb & ": D" & bb).Delete Shift:=xlUp
End If
'Yukarıda yazılan işlem s2 için de aynı şekilde yapılıyor.
son = s1.Range("A" & Rows.Count).End(3).Row
's1 = Sheets("data_malzeme") sayfasında son dolu satır tespit ediliyor.
s1.Range("A2").Select
' A2 seçiliyor.
s1.Range("A2").FormulaR1C1 = "=MAX(R1C:R[-1]C)+1"
Selection.AutoFill Destination:=s1.Range("A2:A" & son), Type:=xlFillDefault
s1.Range("A2:A" & son).Value = s1.Range("A2:A" & son).Value
'Yukarıdaki kısımda numaralandırma yeniden yapılıyor.
cbad2 = ""
'Malzeme adının içi boşaltılıyor.
txtsira = ""
'Sıra no içerisi boşaltılıyor.
txtad = ""
'Malzeme kodunun içerisi boşaltılıyor.
End Sub
'Kod bitiriliyor.
 
Çok teşekkür ediyorum kolay gelsin.
 
Geri
Üst