Metin İçerisinden Sayı Alma

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki kodu deneyiniz.

Kod:
Sub Sayilari_Ayir()
    Application.ScreenUpdating = False
    
    Range("C:C").ClearContents
    
    For X = 2 To Cells(Rows.Count, 2).End(3).Row
        Veri = Cells(X, 2)
        Veri = Replace(Veri, "Bayi: ", "*")
        Veri = Replace(Veri, " Terminal: ", "*")
        Veri = Split(Veri, "*")
        For Y = 0 To UBound(Veri)
            If IsNumeric(Veri(Y)) Then
            Cells(X, 3) = IIf(Cells(X, 3) = "", Veri(Y), Cells(X, 3) & Chr(10) & Veri(Y))
            End If
        Next
    Next

    Application.ScreenUpdating = True
    
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Katılım
22 Ekim 2009
Mesajlar
151
Excel Vers. ve Dili
2007&2010
Korhan Bey Çok teşekkür ederim.. Şu anda çok güzel çalışıyor harikasınız.. İlginize teşekkür ederim...
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Bu sorunuz için ayrı başlık açmalısınız...
 
Katılım
3 Haziran 2021
Mesajlar
197
Excel Vers. ve Dili
Excel 2016 64 bit Türkçe ve Google e-tablo
Bir modül içine aşağıdaki kodları ekleyiniz.


Kod:
Function RakamAl(Hücre)
Dim Karakter, i As Integer
Dim Sonuç
For i = 1 To Len(Hücre)
Karakter = Mid(Hücre, i, 1)
If IsNumeric(Karakter) = True Then
Sonuç = Sonuç & Karakter
End If
Next i
RakamAl = Sonuç
End Function

Daha sonra =RakamAl(A1) şeklinde kullanabilirsiniz.


Hocam emeginize sağlık ama bucuklu rakamlari yuvarliyor rakamlari yuvarlamasa olabilmi
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

C++:
Option Explicit

Function RakamAl(Hücre) As Double
    Dim Karakter As Variant, i As Integer, Sonuç As Variant
    
    For i = 1 To Len(Hücre)
        Karakter = Mid(Hücre, i, 1)
        If IsNumeric(Karakter) = True Or Karakter = "," Then
            Sonuç = Sonuç & Karakter
        End If
    Next i
    
    RakamAl = Sonuç
End Function
 
Katılım
3 Haziran 2021
Mesajlar
197
Excel Vers. ve Dili
Excel 2016 64 bit Türkçe ve Google e-tablo
Deneyiniz.

C++:
Option Explicit

Function RakamAl(Hücre) As Double
    Dim Karakter As Variant, i As Integer, Sonuç As Variant
   
    For i = 1 To Len(Hücre)
        Karakter = Mid(Hücre, i, 1)
        If IsNumeric(Karakter) = True Or Karakter = "," Then
            Sonuç = Sonuç & Karakter
        End If
    Next i
   
    RakamAl = Sonuç
End Function


Olmadı hocam olmuyo
0.5 yuvarıyor tam sayıya

Ben istiyorum bucuklarida versin tam sayılarida
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ondalık ayıracı virgül oilarak yazıp deneyiniz.
 
Katılım
3 Haziran 2021
Mesajlar
197
Excel Vers. ve Dili
Excel 2016 64 bit Türkçe ve Google e-tablo
Ben işlemi kendime şöyle uyarladim
Fuction RakamA1:AI90 (Hücre) As Double

Başkada bir değişiklik yapmadım ama
A1 desem de rakamları yuvarlamakta
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Benim verdiğim kodu kopyalayın.
Dosyanızı açın.
ALT+F11 tuşlarına basın.
Karşınıza kod editörü gelecek.
INSERT menüsünde "Module" seçeneğini seçiniz.
Sağ tarafta beyaz bir pencere açılacak.
O pencereye kodu yapıştırınız.
Sonra excel sayfasına geri dönünüz.

Dosyanızı farklı kaydet yöntemiyle ve dosya bocimi olarak "Makro İçerebilen Excel Çalışma Kitabı" olarak kayit edin.

Sonra hücrelerde benim görsel olarak paylaştığım gibi kullanabilirsiniz.

Formülü uyguladığınız hücrenin biçimini "Genel" ya da "Ondalıklı Sayı" olarak ayarlarınız.

Eğer yine yapamazsınız lütfen uyguladığınız örnek dosyanızı paylaşınız.
 
Katılım
3 Haziran 2021
Mesajlar
197
Excel Vers. ve Dili
Excel 2016 64 bit Türkçe ve Google e-tablo
Hocam evet başka bir sayfada yaptığım zama oluyor.

Dosya ekleyemedim.
Benim dosyada 100 kisilik bir takip listem var. Sütun sayisida ay bazında.

Örneğin A satırında
a15 hücresine K3.5 yazdım
a23 Hücresine K5 yazım bunların rakamlarını alsın ve toplasın =5

Aynı Satırda sadece rakam yardımda Aynı yere toplamasını Ben K yazan degerleri başka bir işlem için toplamını alıyorum karışmaması lazım sadece rakam ile Başında K olan değerlerin

Kullandığım bir Makro var. Satır sütun takibi için. Bu yeni Makro nasıl çalıştırmak lazım Aynı sayfada bilmiyorum. Yardımlarınız için tesekkurederim


Aynı hücreye sadece değer yazıldığında
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Öncelikle sürekli olarak alıntı yaparak cevap yazmamanızı rica edeceğim.

Dosyanızı dosya paylaşım sitelerine yükleyerek indirme linkini forumda paylaşabilirsiniz. Dilerseniz de altın üye olarak forumun diğer nimetlerinden de faydalanabilirsiniz.
 
Katılım
3 Haziran 2021
Mesajlar
197
Excel Vers. ve Dili
Excel 2016 64 bit Türkçe ve Google e-tablo
Alıntı yaparak cevap verdiğim için kusura bakmayın uyarınız için tesekkurederim Korhan bey

 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Forumda neden korumalı dosya paylaşıyorsunuz?
 
Katılım
3 Haziran 2021
Mesajlar
197
Excel Vers. ve Dili
Excel 2016 64 bit Türkçe ve Google e-tablo
Söylemeyi unuttum
Oradaki Makro her tıklamada şifre devreye giriyor her hücre değişikliğinde şifre girilmesi gerekiyor hocam
Şifre 3690+
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Siz aşağıdaki formülle çözüme gidebilirsiniz. Şuan için makroyu kullanmanıza gerek yok.

C++:
=SUMPRODUCT(--SUBSTITUTE(0&E9:AJ9;"K";""))
Eğer Türkçe sürüm kullanıyorsanız (Profilinizde belirtmemişsiniz) linkten formülü çevirip kullanabilirsiniz.

Translator • Excel
 
Katılım
3 Haziran 2021
Mesajlar
197
Excel Vers. ve Dili
Excel 2016 64 bit Türkçe ve Google e-tablo
Hocam ilgi ve emeğinize için çok tesekkur ederim.
Bu formül de olmuyor başında metin olmasada olsada aynı yere toparlıyor
Bende bir sütun daha açtım metin olmayandan metin olanı cikartigim zaman bir başka sütunda işimi görüyor.
 
Üst