Farklı Sayfalarda Bulunan Verilerin Aynı Anda Silinmesi

Katılım
23 Kasım 2005
Mesajlar
41
Değerli Forum Üyeleri,
Personeller adlı sayfanın B6 satırındaki Tuğrul ŞAHİN isimini silerken, İzin Dağılımı, İzin Dağılımı1 ve İzin Takip Cetveli sayfalarında bulunan Tuğrul ŞAHİN ismininin bulunarak, üç ayrı sayfadaki verileri aynı anda makroyla silmek istiyorum. Sizlerden yardım bekliyorum.
Saygılarımla.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
C sütununda silinecek kişini üstüne çift tıklıyorsunuz ve o ve diğer 2sayfada siliniyor.
Ekli dosyayı inceleyiniz.:cool:
Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim adr1 As String, adr2 As String
If Intersect(Target, [C3:C65536]) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
If MsgBox("[ " & Target.Value & " ] İsimli Şahsı Silmek İstiyormusunuz ?,", vbQuestion) = vbNo Then Exit Sub
Set k = Sheets("İzin Dağılımı").Range("D2:IV2").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not k Is Nothing Then
    adr1 = Range(Cells(2, k.Column), Cells(65536, k.Column)).Address
    Sheets("İzin Dağılımı").Range(adr1).ClearContents
End If
Set n = Sheets("İzin Dağılımı-1").Range("D2:IV2").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not n Is Nothing Then
    adr2 = Range(Cells(2, n.Column), Cells(65536, n.Column)).Address
    Sheets("İzin Dağılımı-1").Range(adr2).ClearContents
End If
Range(Cells(Target.Row, 2), Cells(Target.Row, 256)).ClearContents
MsgBox "Veri Silindi..!!", vbOKOnly + vbInformation
End Sub
 

N.Ziya Hiçdurmaz

Özel Üye
Katılım
28 Nisan 2007
Mesajlar
2,218
Excel Vers. ve Dili
Office 2013 TR / 32 Bit
yanıt

Kodu sayfa kod bölümüne kopyalayınız. silmek istediğiniz veriyi çift tıklayın veriyi ve diğer sayfalarda aynı olanları siler.
Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cells.Replace What:=ActiveCell, Replacement:=" ", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub
 
Katılım
23 Kasım 2005
Mesajlar
41
Orion2,
Teşekkür ederim, fakat o isimdeki bilgilerin komple silinmesini (satır veya sütun olarak komple silinmesi) istiyorum. Değişiklik yapmanız mümkünmüdür. "Birde daha önce söylediklerimin devamı olarak olabilirse, Personel sayfasındaki o verini komple silindikten sonra İzin Dağılımı, İzin Dağılımı1 bir sayfalarının D2 sütünundaki başlayan isimlerle birlikte alfabetik olarak (D5:D29 satırındaki formüllerin bozulmadan) D30:I425 aralığındaki veriler ile İzin Takip Cetveli sayfalarında B5:FU500 aralığında bulunan veriler ile birlikte sıralayabilirmiyim. Yeni bir başlık olarak sormak gerekirse yeni bir başlık açabilirim." Olması mümkün değil ise o verilerin bulunduğu satır veya sütunların tamamen silinmesi yeterli.

Teşekkürler.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Sıralama sorusunu ayriyetten sorabilirsiniz.
Sanırım çift tıklama ile sıralama olmayacak .Buton ile olursa başka sayfada sıralama yapılabilecek gibime geliyor.
İstediğiniz şekilde kodu düzenledim.
Ancak silindi sütunda 1nci satırda yazmış olduğunuz formül hata veriyor.O formülü değiştiriseniz problem kalmayacak gibi görünüyor.Şu formülü kullanbilirsiniz =SÜTUN()
Dosya Güncellendi
Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim adr1 As String, adr2 As String
If Intersect(Target, [C3:C65536]) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
If MsgBox("[ " & Target.Value & " ] İsimli Şahsı Silmek İstiyormusunuz ?,", vbQuestion) = vbNo Then Exit Sub
Set t = Sheets("İzin Takip Cetveli").Range("C2:C65536").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not t Is Nothing Then Sheets("İzin Takip Cetveli").Rows(t.Row).Delete
Set k = Sheets("İzin Dağılımı").Range("D2:IV2").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not k Is Nothing Then Sheets("İzin Dağılımı").Columns(k.Column).Delete
Set n = Sheets("İzin Dağılımı-1").Range("D2:IV2").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not n Is Nothing Then Sheets("İzin Dağılımı-1").Columns(n.Column).Delete
Rows(Target.Row).Delete
MsgBox "Veri Silindi..!!", vbOKOnly + vbInformation
End Sub
 
Son düzenleme:
Katılım
23 Kasım 2005
Mesajlar
41
Orion2,
Teşekkürler yardımlarınız için, fakat bir yerde herhalde kendim ne yapmak isteğimi size eksik olarak telafuz etmişim. Özür dileyerek tekrar yardımlarınızı bekliyorum. Makro izin dağılımı ve izin dağılımı bir sayfasındaki veri bulunan satırları siliyor, diğer iki sayfa olan personel ve izin takip cetveli sayfasındaki verileri siliyor, yalnız ben satır veya sütunların komple silinmesini istiyorum.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Dosyayı istediğiniz şekilde güncelledim.
Önceki mesajımdan indirebilirsiniz.:cool:
 
Katılım
23 Kasım 2005
Mesajlar
41
Orion 2
Verinin üzerin çift tıklayıp silmeye çalıştığımda aşağıdaki hatayı veriyor. Code execution has been interrupted hatası veriyor. Makrodaki Hata Verdiği Kod : Set n = Sheets("İzin Dağılımı-1").Range("D2:IV2").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole) y
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Orion 2
Verinin üzerin çift tıklayıp silmeye çalıştığımda aşağıdaki hatayı veriyor. Code execution has been interrupted hatası veriyor. Makrodaki Hata Verdiği Kod : Set n = Sheets("İzin Dağılımı-1").Range("D2:IV2").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole) y
Yukarıda koyu font ile belirtilmiş y olmaması lazım.
 
Üst