• DİKKAT

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

Hücre İçindeki Tarih ve Sayıyı çekmek.

Katılım
17 Temmuz 2024
Mesajlar
27
Excel Vers. ve Dili
Excel Sql
Merhabalar;
A1 Hücresinde uzunca bir metin var. Metnin içeriğinde geçen " ............................27.12.2024 tarih ve 35217 sayılı yazısın....................................." 27.12.2024 - 35217 şeklinde parçayı almak istiyoruz.Konu hakkında ustalardan yardım bekliyorum.Şimdiden teşekkürler.
 
Merhabalar hangi excel sürümünü kullanıyorsunuz. bunu porfilde belirtmeniz lazım.
=PARÇAAL(A1; MBUL(" tarih ve"; A1) - 10; 10)
sadece tarihi alır..
tarih ve sayı için

=PARÇAAL(A1; MBUL(" tarih ve"; A1) - 10; 10) & " - " & KIRP(PARÇAAL(A1; MBUL(" tarih ve "; A1) + 10; MBUL(" sayılı"; A1) - (MBUL(" tarih ve "; A1) + 10)))
 
C#:
Sub test()
    Dim reg As Object, col As Object, strInput As String
   
    strInput = "...........................27.12.2024 tarih ve 35217 sayılı yazısın...................."
   
    Set reg = CreateObject("VBScript.RegExp")
   
    'reg.Global = True
    reg.IgnoreCase = True
    reg.Pattern = "\d{1,2}\.\d{1,2}\.\d{2,4}(?=\s*tarih)|\d+(?=\s*sayılı)"
   
    If Not reg.test(strInput) Then
        MsgBox "uyuşma yok"
        End
    End If
   
    Set col = reg.Execute(strInput)
   
    Debug.Print col(0)
   
    If col.Count > 1 Then _
        Debug.Print col(1)
   
End Sub

1773777888556.png
 
C#:
Sub test()
    Dim reg As Object, col As Object, strInput As String
  
    strInput = "...........................27.12.2024 tarih ve 35217 sayılı yazısın...................."
  
    Set reg = CreateObject("VBScript.RegExp")
  
    'reg.Global = True
    reg.IgnoreCase = True
    reg.Pattern = "\d{1,2}\.\d{1,2}\.\d{2,4}(?=\s*tarih)|\d+(?=\s*sayılı)"
  
    If Not reg.test(strInput) Then
        MsgBox "uyuşma yok"
        End
    End If
  
    Set col = reg.Execute(strInput)
  
    Debug.Print col(0)
  
    If col.Count > 1 Then _
        Debug.Print col(1)
  
End Sub

Ekli dosyayı görüntüle 261109
Kodu Makro içeren excel sayfasına yapıştırdım.Sonuç dönmedi.
 
Sonuçları editörün konsoluna (Ctrl + G ile gidin) yazıyor; veya kodu Excel hücresine verecek şekilde revize edin.

.
 
Profilinizde kullandığınız excel sürümü ve dilini belirtmemişsiniz. Bu alanı güncellemenizde fayda var. Linki inceleyerek güncelleyebilirsiniz.



Ben Ofis 365 sürümü için öneride bulunmak isterim...

Veri A1 hücresinde...

Tarih için boş bir hücreye;
C++:
=TEXTJOIN(".";;TAKE(TEXTSPLIT(TRIM(REGEXREPLACE(A1;"[^\d]+";" "));" ");;3))

Diğer sayı için;
C++:
=TAKE(TEXTSPLIT(TRIM(REGEXREPLACE(A1;"[^\d]+";" "));" ");;-1)

1773955674500.png

 
Geri
Üst