• DİKKAT

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

hücredeki karışık verilerden ayıklama ...

Katılım
2 Ekim 2006
Mesajlar
35
Excel Vers. ve Dili
excel 2003
Arkadaşlar ;

diyelim ki bir sütunda 500 satır var. Satır sayısı önemli olmasın
ama sütunun içindeki bilgiler o kadar karışık ki
atıyorum
"telekom (25 h 2456) "

gibi bilgiler olsun. Bu bütün satır boyunca olsun.
Ben bunun içinden () aralığındaki bilgileri alabilir miyim)

text columns özelliğinden yapıyorum ama veriler o kadar karışık ki
düzgün bir hizalaması yok o da çok uğraştırmakta.
macrolar ile veya bildiğini bir başka fonksiyon ile bu mümkün müdür

konu ile ilgili yardımlarınız için şimdiden teşekkür ederim.
 
Merhaba.
Değiştirilecek veri A1 de olduğu varsayılarak.
B1 hücresine aşağıdaki formülü yazın:cool:
Ve aşağı doğru çekerek kopyalayın.:cool:
=PARÇAAL(A1;BUL("(";A1)+1;(BUL(")";A1)-1)-(BUL("(";A1)))
 
Örnek dosyayı inceleyiniz.:cool:
 
Makro ilede aşağıdaki gibi olur.
A sütunun da ayıklama yapılıyor.Ve tekrar ayni hücre üstüne yazıyor.!!
Boş bir modüle kopyalayıp deneyiniz.
Kullanmadan önce çalışmanızın bir yedeğiniz almanızda her zaman fayda vardır.
Kolay gelsin.:cool:
Kod:
Sub ayir()
Dim sonsat As Long, i As Long, ilk As Byte, son As Byte, uzunluk As Byte
sonsat = Sheets("Sayfa1").Cells(65536, "A").End(xlUp).Row
For i = 1 To sonsat
On Error GoTo hata
    ilk = WorksheetFunction.Find("(", Cells(i, "A").Value) + 1
    son = WorksheetFunction.Find(")", Cells(i, "A").Value)
    uzunluk = son - ilk
    sonuc = Mid(Cells(i, "A").Value, ilk, uzunluk)
    Cells(i, "A").Value = sonuc
hata:
Next
MsgBox "İşlem Tamam"
End Sub
 
Metni sütunlara dönüştür ile de parantez içindeki bilgileri ayıklayabilirsiniz.
 
arkadaşlar verdiğiniz çözümler için teşekkür ederim.
Yalnız Sezar'ın kullandığı formül biraz karışık geldi formül hakkında
küçük bir açıklama yapmak mümkün mü acaba ?
=PARÇAAL(A1;BUL("(";A1)+1;(BUL(")";A1)-1)-(BUL("(";A1)))

teşekkür ederim.
 
=PARÇAAL(metin;başlangıç sayısı;sayı karakterler)

A1 = Ahmet olduğunu varsayarsak;

=parçaal(a1;2;3) dersek, Yani A1 hücresinden 2. karakterden başlayarak 3 karakter al anlamındadır. sonuç hme olur

"telekom (25 h 2456) "

=PARÇAAL(A1;BUL("(";A1)+1;(BUL(")";A1)-1)-(BUL("(";A1)))

A1 metin yani telekom (25 h 2456)

BUL("(";A1)+1 Başlangıç sayısı ,yani "(" işaretini bul. Sizin örneğinizde 10 çıkar.

(BUL(")";A1)-1)-(BUL("(";A1)) sayı karakter, yani "(" işareti ile ")" işareti arasındaki karakter sayısını bul. Sizin örneğinizde bu 9 çıkar.

BUL fonksiyonlarını istediğiniz karakteri bulmak için kullanıyoruz.
Fonksiyondaki +1 ile -1 ifadelerini kullanmazsak sonuç şöyle olur : (25 h 2456)

Sonuç olarak fonksiyon şu hale gelir.
=Parçaal(a1;10;9)
Yani A1 hücresindeki metinin 10.karakterinde itibaren 9 karakter al. Onun sonucuda sizin istediğiniz 25 h 2456 dır.

Anlatma yeteneğim fazla yoktur. Umarım açıklayıcı olmuştur.
Konu ile ilgili ayrıca Excel Yardım menüsünü kullanabilirsiniz.
 
teşekkür ederim gayet açıklayıcı oldu
yardımların için teşekkü ederim.
 
Geri
Üst