selamlar,
Kod:
ek_islemler = "ENZİM-HİDROFİL-TURBANG-AİRCO"
istenmeyen = "TURBANG-ENZİM"
'ek işlemlerin içinde, istenmeyen alanındaki "TURBANG-ENZİM" varsa
'istenmeyen ekişlem var diye mesaj vermesini istiyorum?
yardımcı olabilirmisiniz?
aşağıdaki kod işinize yarayabilir
Function RegExpOr()
ek_islemler = "ENZİM-HİDROFİL-TURBANG-AİRCO"
istenmeyen = "TURBANG-ENZİM"
Dim RegEx As Object
Set RegEx = CreateObject("VBScript.RegExp")
With RegEx
.IgnoreCase = True
.Global = True
.MultiLine = True
.Pattern = "(" & Replace(istenmeyen, "-", "|") & ")"
If .Test(ek_islemler) = True Then MsgBox "veri var"
End With
End Function
halil üstadım teşekkür ederim, çok harika oldu,
rica ederim
iyi çalışmalar
not: dikkat edilmesi gereken husus işlem maalesef alt kelimelerde de doğru sonuç gönderiyor
mesela
ek_islemler = "ENZİM-HİDROFİL-koTURBANG-AİRCO"
istenmeyen = "TURBANG-ENZİM"
burada koTURBANG kelimesinin içinde de TURBANGgeçtiği için uyarı mesajı verir
ek işlem listemi buna göre düzenlerim, bu hataya düşülmemesi için tanımlamalarda dikkat edilir.
bilgilendirme ve yardımınız için çok teşekkür ederim.
aşağıdaki gibi bir düzenleme yapılabilir bu durumda sorun çıkmayabilir
ek_islemler = " " & Replace(ek_islemler, "-", " - ") & " "'<-- burada kelimelerin başına ve sonuna boşluk eklenmiş
.Pattern = "( " & Replace(istenmeyen, "-", "|") & " )"'<-- burada da kelimelerin başına ve sonuna boşluk eklenmiş
ek_islemler = "ENZİM-HİDROFİL-TURBANG-AİRCO"
istenmeyen = "TURBANG-ENZİM"
ek_islemler = " " & Replace(ek_islemler, "-", " - ") & " "
Dim RegEx As Object
Set RegEx = CreateObject("VBScript.RegExp")
With RegEx
.IgnoreCase = True
.Global = True
.Multiline = True
.Pattern = "( " & Replace(istenmeyen, "-", "|") & " )"
If .Test(ek_islemler) = True Then MsgBox "veri var"
End With