Hücre içinde silme

Katılım
19 Ocak 2007
Mesajlar
21
Excel Vers. ve Dili
excel 2003 tr
arkadaşlar forumda aradım bulamadım aynı hücre içinde telefon ve faks numaraları var bunlardan bütün faksları silmek istiyorum yardımcı olur musunuz
 
Katılım
6 Şubat 2005
Mesajlar
1,467
Dosyanızı yedekleyip, aşağıdaki kodu denermisiniz.
Sub FaksSil()
For i = 2 To Range("a1").CurrentRegion.Rows.Count
Sil = Split(Range("b" & i), "FAKS")
Range("b" & i).Value = Sil(0)
Next
End Sub
 

Metin Karaağaç

Uzman
Altın Üye
Katılım
25 Aralık 2004
Mesajlar
1,793
Excel Vers. ve Dili
Office 2016 Pro Plus-Türkçe
Altın Üyelik Bitiş Tarihi
10-12-2025
Telefon numaraları aynı hizada yazılmış olsalardı, "Veri/Metni Sütunlara Dönüştür" diyerek "FAKS" yazısından sonra yazılanları ayrı bir hücreye aktarıp silebilirdiniz.
Ancak telefon numaralar bazı hücrelerde bitişik, bazı hücrelerde boşluklu olarak yazılmış. O yüzden bir kriter belirleyerek ayıramıyorum.


Düzeltme: Sn. omerceri'nin mesajını farkettim. Çözümü bulmuş zaten. Kolay gelsin.
 
Katılım
6 Şubat 2005
Mesajlar
1,467
Veri/Metni Sütunlara Dönüştür/Sınırlandırılmış seçeneğinden sonra açılan iletişim kutusundaki Diğer'e F yazarsanız siliniyor. F'den sonraki verileri ayrı bir sütuna almıyor nedenini bende anlamadım.
 
Katılım
19 Ocak 2007
Mesajlar
21
Excel Vers. ve Dili
excel 2003 tr
Sn. omerceri yazdığınız kodu denedim ama olmadı
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Sayın flz82

Fax olanları derken numaraları da silecekmisiniz?
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,897
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
C2 hücresine


=YERİNEKOY(YERİNEKOY(YERİNEKOY(B2;"";"");SAĞDAN(YERİNEKOY(B2;"";"");23);"");DAMGA(10);"")

yazıp aşağı çekip deneyiniz.
 
Katılım
19 Ocak 2007
Mesajlar
21
Excel Vers. ve Dili
excel 2003 tr
Sn. ömerceri eğer bazı hücrelerde faks numaraları yoksa yine de yazdığınız kod çalışır mı
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Alt+F11 ile vba sayfasını açın.
Kodlardaki açıklamayı okuyun.
 
Katılım
6 Şubat 2005
Mesajlar
1,467
Kodları denemiştim çalışması lazım FAKS kelimesi yoksa o hücreyi atlar, Sütunlara dönüştürde ise F harfi bulunmuyorsa çalışmaz
 
Katılım
6 Şubat 2005
Mesajlar
1,467
Anladığım kadarı ile verilerin yazılışı tek tip değil ilk önce tüm boşlukları filan silerek, verilerini tek tip haline getirmeye çalış.
 
Katılım
19 Ocak 2007
Mesajlar
21
Excel Vers. ve Dili
excel 2003 tr
yazdığınız kodu çalıştırdım çok sağolun.anladığım kadarıyla hücrede fakstan sonra başka bir işyeri telefonu olsaydı onu da siliyor bunun için bir çözüm var mı sadece faks silinebilir mi
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
omerceri'nin kodları harika, istediğini yapıyor zaten
 
Katılım
19 Ocak 2007
Mesajlar
21
Excel Vers. ve Dili
excel 2003 tr
evet ben omerceri'nin kodlarıyla çalıştırdım.ayrıca sadece faksların silinip silinemeyeceğini soracaktım yani eğer listede fakstan sonra bir numara daha olsaydı onların kalmasını istiyorum
 
Katılım
19 Ocak 2007
Mesajlar
21
Excel Vers. ve Dili
excel 2003 tr
galiba tam olarak anlatamadım ekteki listede fakstan sonraki numaraların hepsi siliniyor bunun için bir çözüm var mı
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,897
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
C2 hücrenize

Kod:
=YERİNEKOY(YERİNEKOY(B2;PARÇAAL(YERİNEKOY(KIRP(B2);DAMGA(10);"");BUL("FAKS";YERİNEKOY(KIRP(B2);DAMGA(10);""));21);"");DAMGA(10);"")
yazarak aşağı çektiğinizde oluşan veriler işiniz görürmü?
 
Katılım
19 Ocak 2007
Mesajlar
21
Excel Vers. ve Dili
excel 2003 tr
bu şekilde yapılan liste çok düzgün olmuyor ama benim yaptığımdan çok daha iyi yine de ilgilendiğiniz için teşekkürler
 
Katılım
6 Şubat 2005
Mesajlar
1,467
Aşağıdaki kodda tek sorun numaralar arasındaki boşluklar siliniyor.
Sub FaksSil()
Columns("B:B").Replace What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
For i = 2 To Range("a1").CurrentRegion.Rows.Count
bul = Split(Range("b" & i), Chr(10))
On Error Resume Next
For e = 0 To 4
If Left(bul(e), 4) <> "FAKS" And bul(e) <> "" Then
Range("C" & i).Value = Range("C" & i) & bul(e) & Chr(10)
End If
Next
Next
End Sub
 
Üst