• DİKKAT

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

Vba Bul ve sil

Katılım
19 Kasım 2007
Mesajlar
11
Excel Vers. ve Dili
office 2003
Merhabalar,
G sütununda ve B sütununda tarihlerim var,
G sütunundaki tarihleri B sütununda arayıp bulan,
bulduğu hücreyi yukarı sürükleyerek silme işlemi yapmak istiyordum.

Dim x As Integer
For x = 0 To 22
SONUC = ActiveSheet.Cells(1, 7) 'G sütunu
Cells.Find(What:=SONUC, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
Next x

Şeklinde yazdığım makro istediğim işlemi yapıyor fakat,
Tüm sayfada arama silme yaptığından,
G sütunundaki verileri de siliyor.
Eksiğim nerededir yardımcı olabilme ihtimaliniz var mıydı?
 
Merhaba
Sadece "g1" hücresindeki verimi aranacak yoksa "g1:g22" aralığındakilerde mi?
 
Merhabalar,
G2:G11 aralığında olanları B sütununda arayacak
B sütununda bulduğu o hücreyi "Delete Shift:=xlUp" yöntemiyle silecek.
 
Ek dosyayı deneyiniz
Eğer "b" sütununda aynı tarih 1 den fazla olma ihtimali yoksa aşağıdaki mavi satırları silersiniz.
http://www.dosya.tc/server10/zqyyes/23.zip.html
Kod:
Private Sub CommandButton1_Click()
Dim x As Integer
For x = 1 To 11
SONUC = ActiveSheet.Cells(x, 7)
s = Cells(Rows.Count, "B").End(3).Row
[COLOR="Blue"]i = WorksheetFunction.CountIf(Range("B1:B" & s), SONUC)[/COLOR]
[COLOR="Blue"]If i > 0 Then
For j = 1 To i[/COLOR]
    Set c = Range("B1:B" & s).Find(SONUC, , xlFormulas, _
xlPart, xlByRows, xlNext, False, False)
    If Not c Is Nothing Then c.Delete Shift:=xlUp
[COLOR="Blue"]Next: End If[/COLOR]
Next

End Sub
 
Sayın PLİNT,
Kodlar tam olarak çalıştı.
Emeğinize sağlık.
Bir sorum daha olacaktı yardımcı olmanız mümkün müydü?
Eklemiş olduğum excel'de G sütunundaki tarihleri sizin yardımınızla B sütununda bulup sildik.
ardından B Sütununda son dolu hücreyi bulup otomatik doldurmasını istiyordum.
Son dolu hücreyi buldum ama otomatik doldur diyince hata veriyor.

https://drive.google.com/file/d/1G_htz-tGhg6mNJhb6gu-8jOu4OnT81PP/view?usp=sharing
 
Kod:
Sub Düğme1_Tıklat()
Dim x As Integer
For x = 1 To 11
SONUC = ActiveSheet.Cells(x, 7)
s = Cells(Rows.Count, "B").End(3).Row
i = WorksheetFunction.CountIf(Range("B1:B" & s), SONUC)
If i > 0 Then
For j = 1 To i
    Set c = Range("B1:B" & s).Find(SONUC, , xlFormulas, _
xlPart, xlByRows, xlNext, False, False)
    If Not c Is Nothing Then c.Delete Shift:=xlUp
Next: End If
Next


Range("C2").Select
Selection.AutoFill Destination:=Range("C2:C32")
Range("C2:C32").Select


Dim son As Long
son = Range("B" & Rows.Count).End(xlUp).Row

Range("B" & son).Select
Selection.AutoFill Destination:=Range("B" & son & ":B32")

End Sub
 
https://drive.google.com/file/d/1cez2YhYk4vng_gZmfr3Mx32tjtE_FR0J/view?usp=sharing

Arkadaşlar İlginize çok teşekkür ederim,
Kodlar tam olarak çalıştı,
bir sorunum daha olacaktı;
Eklemiş olduğum dosyada,
H sütunundaki tarihleri ,
C sütununda arayıp siliyor.
C sütununda boş kalan hücreler otomatik dolduruluyor.
İstediğim C sütununda yeni ay başladığı zaman
yeni bir sayfa açıp adına eski sayfanın adı + yeni ayın ismi koymak,
eski sayfada yeni ay olan bütün satırları yeni sayfaya aktaracak,
ve eski sayfadaki satırları silinecek,
yeni sayfa yeni aydan başlayarak reyonlar otomatik olarak 1 aylık düzenlenecek,
bu işlem 12 aylık olarak yapılabilir mi ?
Emeğinize ve parmaklarınıza teşekkür ederim. :)
 
Son Yazdığım Soruya herhangi bir cevap alamadım ama
Herhalde sorduğum sorumu mantıksızdı acaba ?
 
Son Yazdığım Soruya herhangi bir cevap alamadım ama
Herhalde sorduğum sorumu mantıksızdı acaba ?

Sorular ve cevapları ; genelin de yararı ve kullanmasına açık olarak veriliyor, amaç yardım ve örnek olarak sorulmadan kullanılması ; bu sitede genel eğilim budur.

Ancak siz sorunuzda başkasına da örnek değil size göre bir öznelleştirmeye program yazdırmayı hedeflemiş göründüğünüzden cevap almanız zorlaşmış olabilir. Bu sitede genel eğilim sorun ve tıkanma noktalarında ilerlemeye yardımdır , öznel bir program yazmak değil .

Bu bir eleştiri ikaz değil bunlar haddim olamaz ama , sadece naciz olası neden belirtmek ...
 
Son düzenleme:
Sayın cems,
doğru söylüyorsunuz, biraz kaptırdım kendimi şuda buda olsun diyerek.
 
Geri
Üst