• DİKKAT

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

bul ve sil

Katılım
5 Aralık 2005
Mesajlar
185
Excel Vers. ve Dili
Office 2016 Eng
Selamlar. Excell sayfamda "()" verilerinin hepsini bir makroyla silmek istiyorum. Makro kaydet butonundan "bul" a girip "()" yazıp tümünü bul dediğimde altta çıkan sonuçların üzerinde Ctrl+A yaparak hepsini seçip, seçilmiş hücre alanlarının üzerine sağ tıklayıp "içeriği temizle" den temizleyebiliyorum ama yoğun bir işlem yapmam gerekiyor verileri bu şekilde dönüştürmek benim için çok zaman kaybı oluyor. makroyla bana yardımcı olurmusunuz. İlginize şimdiden teşekkürler... kolay gelsin iyi çalışmalar
 
Selamlar. Excell sayfamda "()" verilerinin hepsini bir makroyla silmek istiyorum. Makro kaydet butonundan "bul" a girip "()" yazıp tümünü bul dediğimde altta çıkan sonuçların üzerinde Ctrl+A yaparak hepsini seçip, seçilmiş hücre alanlarının üzerine sağ tıklayıp "içeriği temizle" den temizleyebiliyorum ama yoğun bir işlem yapmam gerekiyor verileri bu şekilde dönüştürmek benim için çok zaman kaybı oluyor. makroyla bana yardımcı olurmusunuz. İlginize şimdiden teşekkürler... kolay gelsin iyi çalışmalar

Bul komutu yerine değiştir komutunu kullanabilirsiniz.

Aranan= ()
Yeni değer = boş

Tümünü değiştir.
 
yeni değer olarak "boş" bırakıldığında hücrelerde gene değer kalıyor. ben tamamen içeriğinin silinmesini istiyorum ayırca bu işi yapacak bir makro lazım bana... uzun bir işlem beni bekliyor yoksa...:)
 
Siz "()" işaretinin bulunduğu hücredeki tüm veriyi mi silmek istiyorsunuz?

Örneğin A1 hücresinde ali() var ise bu hücredeki tüm bilgilerin silinmesi gibi..
 
Kod:
Cells.Replace What:="()", Replacement:=Empty, LookAt:=xlPart

Sayın Ripek'in dikkat çektiği husus da önemli tabi. Bu kodlar sadece () değerlerini siler. Bu değerlerin bulunduğu hücredeki tüm değerleri silmez.
 
Sayın Ripek;
Ben sadece içinde "()" verisi bulunan hücreleri silmek istiyorum yani hücrenin içinde ali() verisi varsa silmesin, ama () verisi varsa silsin...
 
Aşağıdaki kod ile hücrede sadece () varsa silinir.
Kod:
[LEFT]Cells.Replace What:="()", Replacement:=Empty, LookAt:=xl[COLOR=red]whole[/COLOR][/LEFT]
 
ayrıca hücredeki bütün değeri silmesini sağlamak istiyorum. sanki o hücreye hiç veri girişi yapılmamış gibi olsun.
 
Aşağıdaki kodları kullanabilirsiniz.

Kod:
Sub BulSil()
deg = "()"
For Each sil In Range("a2:z100")
If sil = deg Then sil.Value = Empty
Next
MsgBox "Bitti"
End Sub
 
Yanıt

inputboxtan seçilen hücre aralığında işlem yapar.
Kod:
Sub SIL()
HUC = InputBox("HUCRE ARALIĞINI SEÇİNİZ.")
For Each DEG In Range(HUC)
If DEG = "()" Then
DEG.Clear
End If
Next
End Sub
 
çok teşekkür ederim ripek.. ve dier arkadaşlar.. gerçekten çok işime yaradı bu makro sağolun yardımlarınız için
 
iyi akşamlar,

Sayın üstadlar, bulsil makrosunu denedim ama bir türlü makronun hata vermesini engelleyemedim :)

Yapmaya çalıştığım fakat beceremediğim makro B4:AF644 arasındaki sayı harici olan her hücreyi nasıl temizleyebilirim?
 
iyi akşamlar,

Sayın üstadlar, bulsil makrosunu denedim ama bir türlü makronun hata vermesini engelleyemedim :)

Yapmaya çalıştığım fakat beceremediğim makro B4:AF644 arasındaki sayı harici olan her hücreyi nasıl temizleyebilirim?
:cool:
Kod:
Sub temizle()
Dim hcr As Range
For Each hcr In Range("B4:AF644")
    If IsDate(hcr.Value) Or Not IsNumeric(hcr.Value) Then hcr.Clear
Next
MsgBox "Silme tamamlandı"
End Sub
 
Hazırladığınız kod için teşekkür ederim fakat hücrede #YOK değerleride bulunuyorsa eğer (hiçbir hücrede formül yoktur) bunlarıda temizlemek mümkün müdür acaba?
 
Hazırladığınız kod için teşekkür ederim fakat hücrede #YOK değerleride bulunuyorsa eğer (hiçbir hücrede formül yoktur) bunlarıda temizlemek mümkün müdür acaba?
Hiç bir hücrede formül yoktur diyorsunuz.
O zaman #YOK hatası nerden geliyor?:cool:
 
Hazırladığınız kod için teşekkür ederim fakat hücrede #YOK değerleride bulunuyorsa eğer (hiçbir hücrede formül yoktur) bunlarıda temizlemek mümkün müdür acaba?
Buyurun.:cool:
Kod:
Sub temizle()
Dim hcr As Range
For Each hcr In Range("B4:AF644")
    If IsDate(hcr.Value) Or IsError(hcr.Value) Or _
    Not IsNumeric(hcr.Value) Then hcr.Clear
Next
MsgBox "Silme tamamlandı"
End Sub
 
B4:AF644 hücrelerine makrolar sayesinde formülleri yazdırıp daha sonrada
With [B4:AF646]
.Formula = .Value
End With

ile hücreleri formüllerden kurtarıyorum ki dosya fazla şişmesin diye.

ama siz ozaman formülleri düzeltiniz ki bu hatayı almayın diyebilirsiniz, fakat ben sadece böyle bir işlem söz konusumu acaba diye sordum.

Formülleri düzeltmek çok fazla makroyu değiştirmek anlamına geldiğinden size zahmet verdim kusura bakmayın sayın Gizlen, ifademi daha net anlattığımı umuyorum :redface:
 
Kodlar 16 numaralı mesajdadır.:cool:
 
Sub temizle()
Dim hcr As Range
For Each hcr In Range("D10:AF644")
If IsDate(hcr.Value) Or IsError(hcr.Value) Or _
Not IsNumeric(hcr.Value) Then hcr.Clear
Next
MsgBox "Silme tamamlandı"
End Sub

Kodda bir hata var diyemiyorum ama "hcr.Clear" kısmında bir problem gözüküyor bende , neden olabilir acaba?
 
Sub temizle()
Dim hcr As Range
For Each hcr In Range("D10:AF644")
If IsDate(hcr.Value) Or IsError(hcr.Value) Or _
Not IsNumeric(hcr.Value) Then hcr.Clear
Next
MsgBox "Silme tamamlandı"
End Sub

Kodda bir hata var diyemiyorum ama "hcr.Clear" kısmında bir problem gözüküyor bende , neden olabilir acaba?
Problem deiğiniz nedir.Birleştirilmiş hücre varmı.Bu ararlıkta.Varsa oz aman hcr.clear yerine hcr.value="" kullanın.:cool:
 
Geri
Üst