Hücre Değerinden Yazıları ve Sayıları Ayırma

Bu bölümde hücre değerindeki tüm karakterlere tek tek bakıp yazıları ve sayıları ayırma işlemini gerçekleştiren bir fonksiyon prosedürünü inceleyeceğiz.

Sadece Yazıları Ayırma

Aşağıdaki makro kodu hücre değerindeki tüm karakterlere tek tek bakar ve içinden sadece yazıyı çıkartır:

Function makro_yazi(HucreDegeri) As String

Dim i As Long 'loop
Dim t As String 'karakterleri çıkarmak için

HucreDegeri = Trim(HucreDegeri)

For i = 1 To Len(HucreDegeri)
   If Not IsNumeric(Mid(HucreDegeri, i, 1)) Then
      t = t & Mid(HucreDegeri, i, 1)
   End If
Next i

makro_yazi = t

End FunctionCode language: VB.NET (vbnet)

Sonuç:

Yazıları ve Sayıları Ayırma

Sadece Sayıları Ayırma

Aşağıdaki makro kodu hücre değerindeki tüm karakterlere tek tek bakar ve içinden sadece sayıları çıkartır:

Function makro_sayi(HucreDegeri) As Variant

Dim i As Long
Dim n As Double

HucreDegeri = Trim(HucreDegeri)

For i = 1 To Len(HucreDegeri)
   If IsNumeric(Mid(HucreDegeri, i, 1)) Then
      n = n & Mid(HucreDegeri, i, 1)
   End If
Next i

If n > 0 Then
   makro_sayi = n
Else
   makro_sayi = ""
End If

End FunctionCode language: VB.NET (vbnet)

Sonuç:

Yazıları ve Sayıları Ayırma

Yazıları ve Sayıları Ayırma

Aşağıdaki makro kodu aralıktaki tüm hücrelere tek tek bakar ve fonksiyon prosedürlerini kullanarak bir sütun sağa hücrenin içerdiği yazıyı, 2 sütun sağa hücrenin içerdiği sayıları çıkarır:

Sub makro_yazi_sayi_ayirma()

Dim Aralik As Range
Dim Hucre As Range

Set Aralik = Range("A2", "A" & Cells(Rows.Count, 1).End(xlUp).Row)

For Each Hucre In Aralik
   Hucre.Offset(0, 1).Value = makro_yazi(Hucre.Value)
   Hucre.Offset(0, 2).Value = makro_sayi(Hucre.Value)
Next Hucre

End SubCode language: VB.NET (vbnet)

Sonuç:

Yazıları ve Sayıları Ayırma

İlgili Makaleler

Kaynak


Yayımlandı

kategorisi

yazarı:

Etiketler: