Veri İçerisinden 8 haneli Sayıyı Çıkartmak

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Katılım
23 Eylül 2013
Mesajlar
1,348
Excel Vers. ve Dili
Excel 2007 İngilizce -
Excel 2010 Türkçe -
Excel 2013 Türkçe -
Merhabalar,

Soru;
  • Jane 1484845 kere İstanbul'a gelmiş olması lazım, fakat 12345678 kere geldiği düşünülüyor.
  • Jineps, 12398745 kelime ezberlemiş.
  • 44745484 sayısına ulaşan tek isim Janserey.

gibi verilerimiz var.Bunların içerisinden 8 basamaklı sayıları farklı hücreye almamız lazım.

Sonuçlar;
  • 12345678
  • 12398745
  • 44745484

Not: Bir hücre içerisinde 8 basamaklı sayıların nerede olduğu bilinmiyor.Karşımıza sonda,başta,ortada yada hiç çıkmayabilir.Hücre içerisinde 8 basamaklı bir sayı olabilir fakat 8 basamaklı harici sayılarda olabilir.
 
Son düzenleme:
Katılım
23 Nisan 2011
Mesajlar
283
Excel Vers. ve Dili
Excel 2010 - Türkçe
Altın Üyelik Bitiş Tarihi
02.01.2019
Merhaba, şu kodu dener misiniz?
Kod:
Option Explicit

Sub deneme()
Dim i, j, k, sayac As Integer
Dim sonuc As Variant
sayac = 1
For i = 1 To [A65536].End(xlUp).Row
        sonuc = Split(Cells(i, 1), " ")
            For k = LBound(sonuc) To UBound(sonuc)
                If IsNumeric(sonuc(k)) And Len(sonuc(k)) = 8 Then
                    Cells(sayac, 2) = sonuc(k)
                    sayac = sayac + 1
                End If
            Next
Next
End Sub
 
Katılım
23 Eylül 2013
Mesajlar
1,348
Excel Vers. ve Dili
Excel 2007 İngilizce -
Excel 2010 Türkçe -
Excel 2013 Türkçe -
Sayın, Monelogg,
Teşekkürler.Başka ne gibi sonuçlar çıkacak bakalım.

Not: Soru çözüme kavuşmamış gibi yanıt bekleniyor.
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Alternatif;

Kod:
[FONT="Trebuchet MS"]Sub Emre()
    Dim Rky As Object, i%
    Set Rky = CreateObject("VBScript.RegExp")
    Rky.Global = True
    Rky.Pattern = "([COLOR="red"][0-9]{8}[/COLOR])"
    For i = 1 To Range("A65536").End(3).Row
        Cells(i, "B") = CLng(Rky.Execute(Cells(i, "A")).Item(0))
    Next i
    i = Empty: Set Rky = Nothing
End Sub[/FONT]
 
Katılım
23 Eylül 2013
Mesajlar
1,348
Excel Vers. ve Dili
Excel 2007 İngilizce -
Excel 2010 Türkçe -
Excel 2013 Türkçe -
Murat bey,
Teşekkürler. Farklı alternatifler çıkar mı ? (genel olarak)
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Rica ederim Emre Bey, bu kadar alternatifin sebebi nedir ?
 
Katılım
23 Eylül 2013
Mesajlar
1,348
Excel Vers. ve Dili
Excel 2007 İngilizce -
Excel 2010 Türkçe -
Excel 2013 Türkçe -
Formül ile alternatif;
Alternatif istememin sebebi; bir çok kişinin bildiği farklı yolları görmek diyebiliriz.
Kod:
=PARÇAAL(A1;MİN(EĞER(PARÇAAL(YERİNEKOY(" "&A1&" ";"";" ");
  SATIR($1:$10);10)=METNEÇEVİR(PARÇAAL(A1;SATIR($1:$10);8);"\ 00000000\ ;;;");
    SATIR($1:$10)));8)
[COLOR="Blue"]Formül dizi formülüdür.CTRL + SHİFT + ENTER ile tamamlayınız.[/COLOR]
Not: Soruya cevap olarak başka öneri gelmeyeceğinden dolayı konuyu kapatıyorum.
 
Son düzenleme:
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst