"istanbul" bulduğu satırı silmek (çok acil)

Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
arkadaşlar merhaba

cevabına çok ama çok acil ihtiyaç duyduğum bir konu bu. o kadar acil ki, yazdıktan sonra her saniye sayfayı yenileyip cevapları kontrol edeceğim.

2500 satırlık bir listem var. öyle bir makroya ihtiyacım var ki,
C sütununda istanbul kelimesini görürse, tüm satırı silecek.

değerli yardımlarınızı acilen beklerim,

saygılarımla
 

Mahmut Kök

Özel Üye
Katılım
14 Temmuz 2006
Mesajlar
878
Excel Vers. ve Dili
Excel 2007 - Türkçe
İstanbul

şunu dener misiniz?



sub ist ()

for a=1 to 2500
cells(a,3).value="İstanbul" then goto 2
goto 3
2
Rows(a).Select
Selection.Delete Shift:=xlUp
3 next
end sub
 

Mahmut Kök

Özel Üye
Katılım
14 Temmuz 2006
Mesajlar
878
Excel Vers. ve Dili
Excel 2007 - Türkçe
ist

Sub ist()

For a = 1 To 2500
If Cells(a, 3).Value = "İstanbul" Or Cells(a, 3).Value = "istanbul" Or Cells(a, 3).Value = "İSTANBUL" Then GoTo 2
GoTo 3
2
Rows(a).Select
Selection.Delete Shift:=xlUp
a = 1
3

Next
End Sub
 
Katılım
22 Nisan 2006
Mesajlar
20
Excel Vers. ve Dili
Excel 2003 Türkçe
bide bunu deneyin

Dim rng As Range
For Each rng In Range("C1:C65536")
If rng.Value = "istanbul" Then
rng.Delete
End If
Next rng
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
şöyle bir çözüm denedim, olmadı;

Sub Sil()
For Each i In Range("C1:C5000")
If i = 0 Then i.ClearContents
Next
Range("C16:C5000").SpecialCells(4).Delete -4162
End Sub

bunu nasıl değişebilirim? yoksa yeni kod mu gerekir?

saygılarımla.
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
SN.MESLEKİ VE SN.ceaselessattack ÜSTADLARIMA MİNNETTARIM

SAYGILARIMLA
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
arkadaşlar,
istanbul bulduğu satırı silen makro tamam ama, "istanbul" veya "ankara" veya "adana" bulmadığı satırı silen makro nasıldır?

acil yardımlarınızı beklerim

saygılarımla
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
değerli arkadaşlar,

2 sayfadan oluşan bir çalışmam var. 2. sayfada a sütununda a1:a100 aralığında çeşitli değerler var. ve bu aralığı xxx olarak etiketlendirdim.

1. sayfada ise,
c sütununda (c1:c10000 aralığında) xxx aralığındaki değerli arasın. bulursa, ilgili satırı silsin.

bunu nasıl yapabilirim?

değerli yanıtlarınızı beklerim

saygılar
 
Katılım
14 Şubat 2006
Mesajlar
3,426
Excel Vers. ve Dili
(Excel 2016 - İngilizce)
Altın Üyelik Bitiş Tarihi
30-11-2022
Aşağıdaki kodları kullanabilirsiniz.

Kod:
Sub BulSil()
On Error Resume Next
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")

For i = 2 To s2.[a65536].End(3).Row
    veri = s2.Cells(i, "a").Value
    For j = s1.[c65536].End(3).Row To 2 Step -1
        If UCase(s1.Cells(j, "c").Value) = UCase(veri) Then s1.Cells(j, "c").EntireRow.Delete Shift:=xlUp
    Next j
Next i
Set s1 = Nothing
Set s2 = Nothing
MsgBox "Bitti"
End Sub
Not:Etiketleme kullanılmamıştır.
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
sn. ripek,

ilgili kod, 2. sayfadaki a1:a100 yerine a2:a100 aralığını dikkate alıyor. yani 2. sayfadaki a1 değerini dikkate almıyor.

değerli yanıtlarınızı beklerim
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,260
Excel Vers. ve Dili
Ofis 365 Türkçe
Sayın ripek'in kodlarında :

For i = 2 To s2.[a65536].End(3).Row satırını
For i = 1 To s2.[a65536].End(3).Row ile

For j = s1.[c65536].End(3).Row To 2 Step -1 satırında

2 değerini 1 yapınız
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
Değerli arkadaşlar,

aşağıdaki kod, "list" sayfasındaki değerleri c sütununda arayıp, bulduklarının satırlarını siliyor.
list sayfasında bulduklarının dışındakilerinin c sütununda silineceği makro için hangi kodları değiştirmeliyim?

Set s1 = ActiveSheet
Set s2 = Sheets("list")
For i = 1 To s2.[A65536].End(3).Row
veri = s2.Cells(i, "a").Value
For j = s1.[c65536].End(3).Row To 1 Step -1
If UCase(s1.Cells(j, "c").Value) = UCase(veri) Then s1.Cells(j, "c").EntireRow.Delete shift:=xlUp
Next j
Next i
Set s1 = Nothing
Set s2 = Nothing
MsgBox "Bitti"
End Sub
 

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
İlgili satırı aşağıdaki satırla değiştirip deneyiniz..:cool:
Kod:
If UCase(s1.Cells(j, "c").Value) [COLOR="Red"][B]<>[/B][/COLOR] UCase(veri) Then s1.Cells(j, "c").EntireRow.Delete shift:=xlUp
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
Sn.Evren Gizlen,

değerli cvbınız için tşk ederim fakat ilgili kodu ben de aynı şekilde değiştirerek denedim ama malesef tüm satırları silip sayfada hiç veri bırakmıyor.
 

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
neden &#246;yle bilemiyorum veri olarak ald&#305;&#287;&#305;n&#305;z h&#252;cre d&#246;ng&#252;deki h&#252;cre ile ayni olabilir.:cool:
 
Katılım
30 Mart 2005
Mesajlar
755
Excel Vers. ve Dili
2016 EN
Değerli arkadaşlar,

aşağıdaki kodu, "list" sayfasının a sütunundaki değerleri c sütununda arayıp, bulduklarının satırlarını siliyor.
"list" sayfasının a sütunundaki değerleri c sütununda arayıp, bu değerlerle başlayan hücrelerin satırlarını silmek için hangi kodları değiştirmeliyim?

örneğin: list - a sütununda "ahmet" olsun, C sütununda "ahmet" ile başlayan herşeyi silecek (ahmet, ahmete, ahmetgil, vs)

Set s1 = ActiveSheet
Set s2 = Sheets("list")
For i = 1 To s2.[A65536].End(3).Row
veri = s2.Cells(i, "a").Value
For j = s1.[c65536].End(3).Row To 1 Step -1
If UCase(s1.Cells(j, "c").Value) = UCase(veri) Then s1.Cells(j, "c").EntireRow.Delete shift:=xlUp
Next j
Next i
Set s1 = Nothing
Set s2 = Nothing
MsgBox "Bitti"
End Sub
 
Üst