...siz denersiniz.... eksik karakter varsa, kodda pattern'a ilave edersiniz.
Sub Test2()
' Haluk - 09/08/2022
' sa4truss@gmail.com
Dim regExp As Object, i As Integer
Set regExp = CreateObject("VBscript.RegExp")
regExp.Pattern =...
Sub Test()
' Haluk - 09/08/2022
' sa4truss@gmail.com
Dim regExp As Object, i As Integer
Set regExp = CreateObject("VBscript.RegExp")
regExp.Pattern = "[^\x00-\x7F]"
regExp.Global = True
For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
If...
Bu da döngü ile alternatif olsun.
Sub Fix_Dates_Loop()
Dim Rng As Range
With VBA.CreateObject("VBScript.Regexp")
.Pattern = "(\d{4})[.\-\/](\d{1,2})[.\-\/](\d{1,2})"
.Global = True
For Each Rng In Selection.SpecialCells(xlCellTypeConstants, 23)
If...
...yoktur";0;say(B2)*1))<3;0;EĞER(ESAYIYSA(B2);B2;EĞER(B2="stokta yoktur";0;say(B2)*1)))
Public Function say(Data As Variant)
Dim RegExp As Object
Set RegExp = CreateObject("VBScript.Regexp")
RegExp.Pattern = "[^0-9\,-]"
RegExp.Global = True
say = RegExp.Replace(Data, "")...
Aşağıdaki gibi daha iyi oldu sanki:
Sub farklar()
Set regexp = CreateObject("VBscript.RegExp")
regexp.Global = True
regexp.Pattern = "[^ A-Za-zĞÜŞİÖÇığüşöç]"
'veri = CStr(regexp.Replace(veri.Value, ""))
son = Cells(Rows.Count, "A").End(3).Row
Range("C1:D" & son).ClearContents
For i = 1 To...
...Option Explicit
Function Get_Numbers(My_Rng As Range) As Double
Application.Volatile True
With VBA.CreateObject("VBScript.RegExp")
.Pattern = "[^0-9.,]+"
.Global = True
If .Test(My_Rng.Value) Then
Get_Numbers =...
...gelmiyor, sonucun -5583,96 olarak gelmesi için nasıl bir düzenleme yapmak gerekiyor?
Public Function getNumber(Data As Variant)
Dim RegExp As Object
Set RegExp = CreateObject("VBScript.Regexp")
RegExp.Pattern = "[^0-9\,]"
RegExp.Global = True
getNumber =...
...atladım.
@uzmanamele'nin analiz ettiği gibi benim önerimde ayıraç kısmı sorun çıkarıyor. Bu bağlamda konuyu yeniden irdeledim.
Aslında REGEXP özelliği excele fonksiyon olarak eklense bu tarz desen doğrulamalarında birçok sorun çözülecektir. Umuyorum yakın zamanda Microsoft tarafından METİN...
Sayın Korhan teşekkür ederim. Çözüm yolunuz gayet başarılı oldu.
Ayrıca (Ofis sürümlerine yerleşik olarak REGEXP fonksiyonu gelene kadar idare edeceğiz artık. :)) sözünüze katılmamak mümkün değil :)
Sağlıkla kalın..
Alternatif (KTF);
Ofis sürümlerine yerleşik olarak REGEXP fonksiyonu gelene kadar idare edeceğiz artık. :)
=Get_Unit(A1) şeklinde kullanabilirsiniz.
Option Explicit
Function Get_Unit(My_Rng As Range) As String
Application.Volatile True
With CreateObject("VbScript.RegExp")...
...hcr As Range
Dim dz() As String
Set s1 = Sheets("Sayfa_1")
Set s2 = Sheets("Sayfa_2")
Set R = CreateObject("VBScript.RegExp")
R.Pattern = "(\d{1,2}(\.\d{1,2}){3})"
' R.Pattern = "(\d{2}\.\d{2}\.?)+"
R.Global = True
For Each hcr In...
...aşağıdaki linkte yer alan dosyasında kullandığı "RegExExtract" isimli KTF ile;
https://www.excel.web.tr/threads/kuralli-normal-ifadeler-regular-expression-regex-veya-regexp.199732/post-1117716
Miktarlar için;
=RegExExtract(A1;"(\d+)";0)
Birimler için;
=RegExExtract(A1;"(\w+)$";0)
.
Sizlere daha iyi bir deneyim sunabilmek icin sitemizde çerez konumlandırmaktayız, web sitemizi kullanmaya devam ettiğinizde çerezler ile toplanan kişisel verileriniz Veri Politikamız / Bilgilendirmelerimizde belirtilen amaçlar ve yöntemlerle mevzuatına uygun olarak kullanılacaktır.