istenmeyen harf yada kelimenin engellenmesi

Katılım
24 Ağustos 2007
Mesajlar
120
Excel Vers. ve Dili
2003 türkçe
Saygıdeğer Dostlar
Bir alan içinde bulunması istemediğimiz harfler veya kelimeler için varsayılan değer nasıl belirtilecek. Örneğin harfler girilmeyecek. ğ,ş,ı,ö,ç Kelime için örnek ağaç Ekteki dosyada düzenlenip yayınlanırsa seviniriz.Saygılarımla
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Sayın meraklı biri
Verdiğin ekli dosyayı niye eklediğinizi hiç anlayamadım. Konuyla ne ilgisi var ki?
Bir de şöyle bir sorum var. Gerçekten böylesine ilginç konuları nereden buluyorsun? Adını gerçekten hakettiğini düşünüyorum. :)))
 
Katılım
24 Ağustos 2007
Mesajlar
120
Excel Vers. ve Dili
2003 türkçe
Sn mehmetdemiral
Teşekkür ederim.Ben sizler kadar acces te üstad değilim.Sizlerden 1 2 bilgi almak güzel diye düşünüyorum.Sonra benim adres defterim var.Orada bazı işlerimi kolaylaştıracağımı düşünüyorum.Daha doğrusu adres defterimi kişiselleştiriyorum.Gerçekten sizce ilginç mi bilmiyorum..Bu soruyu şunun için sormuştum. Adres defterimde e mail alanı var.o bölüme girerken yanlış harf girişinin olmamasını istiyorum..İkaz versin istiyorum.Teşekkür ederim.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Bu şekilde kodlarla falan yapılabilir. Ama ben geçerlilik kuralı diye bir alan var. Belki orada yapabilirsin. Alanın geçerlilik kuralına -ben de bakacağım birazdan- böyle bir kural eklenir mi denemek lazım. Kolay gelsin.
 
Katılım
24 Ağustos 2007
Mesajlar
120
Excel Vers. ve Dili
2003 türkçe
Ek dosyaya bakabilirsiniz

Sn mehmetdemiral ekteki dosyaya bak
Burada örneğin a harfi istenmiyor.ve oluyor Ancak birkelime yazdığımda 1 2 a bulunnunca bunu dikkate almıyor.İşinizi kolaylaştırır diye gönderiyorum.Saygılar
 
Son düzenleme:
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Elbette.. O &#231;ok basit bir &#351;ey <>"a" &#351;eklinde a olmayan bir de&#287;er yaz&#305;lmas&#305;n&#305; sa&#287;lam&#305;&#351;. Belki like ve * ile kullan&#305;l&#305;rsa ve birden &#231;ok tan&#305;m and ile ba&#287;lan&#305;rsa bu y&#246;ntem i&#351;&#351;e yarar. Ama u&#287;ra&#351;mak laz&#305;m. Bo&#351; an&#305;mda denerim. Ama &#231;ok basit bir &#351;ekilde bir mod&#252;l yaz&#305;larak baz&#305; karakterlerin giri&#351;inin engellenmesi m&#252;mk&#252;n olur diye d&#252;&#351;&#252;n&#252;yorum. Ama kod yazma konusunda ben de o kadar iyi de&#287;ilim. Ancak bildi&#287;im birka&#231; kodu kullanabiliyorum. Burada ana dili gibi kod kullananlar var, onlar&#305;n yard&#305;m etmesi laz&#305;m. Mesela akl&#305;ma ilk gelenleri s&#246;yleyeyim: Modal&#305;, Beab05 veya Yeni54...
 
Katılım
1 Şubat 2008
Mesajlar
329
Excel Vers. ve Dili
office 2003
OFFİCE 2007
ger&#231;ekten gizel bir soru idi tebrik ederim.

i&#351;e yarayacak bir konu &#246;nce yaz&#305;n&#305; okuyunca bende &#351;a&#351;&#305;rm&#305;&#351;t&#305;m.
sonra ne i&#231;in oldu&#287;unu yaz&#305;n&#305;z&#305; okuyunca hak verdim.
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
Birka&#231; yol var bunun i&#231;in.
&#214;rne&#287;in, Alan&#305;n &#231;&#305;k&#305;&#351;&#305;nda kontrol edilebilir.
Veya Tu&#351;a bas&#305;lma an&#305; kontrol edilebilir veya de&#287;i&#351;me an&#305; kontrol edilebilir.
Ne yap&#305;labilir?
Girimesi yasak olan harf ya da harf gruplar&#305; bir tabloya toplan&#305;r. (Siz de b&#246;yle yapm&#305;&#351;s&#305;n&#305;z zaten)
Bir function olu&#351;turulur boolean tipinde veya ba&#351;ka bir tip d&#246;nd&#252;ren.
Bu fonksiyon i&#231;inde tablo select edilir,
her bir kay&#305;t i&#231;in instr komutu ile yasak olan harf yada harf grubu var m&#305; bak&#305;l&#305;r.
Var ise true ya da belirledi&#287;in bir geri d&#246;n&#252;&#351; de&#287;eri d&#246;nd&#252;r&#252;l&#252;r.
Buna g&#246;re de gerekli mesajlar verilerek ilerleme sa&#287;lan&#305;r.
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Replace i&#351;inizi g&#246;rmez mi? &#214;rne&#287;in "&#246;" harfini "o" ve "&#287;" harfini "g" harfine d&#246;n&#252;&#351;t&#252;rmek gibi;

Kod:
=replace(replace([alan ismi];"&#246;";"o");"&#287;";"g")
alan i&#231;indeki t&#252;m "&#246;" ler "o" ya "&#287;" ler "g" ye d&#246;n&#252;&#351;&#252;r..
 
Son düzenleme:
Katılım
24 Ağustos 2007
Mesajlar
120
Excel Vers. ve Dili
2003 türkçe
Sn beab05
Bu kodu nereye yerle&#351;tirece&#287;iz Hatalarla kar&#351;&#305;la&#351;&#305;yorum Yard&#305;mc&#305; olursan&#305;z sevinirim.sayg&#305;lar
 
Katılım
22 Ocak 2007
Mesajlar
815
Excel Vers. ve Dili
2003
bunu deneyin hem t&#252;rk&#231;e karakterlere izin vermez hemde tam olarak mail adresi yazmadan kabul etmez

Private Sub emailadres_AfterUpdate()
If IsEmailAddress(emailadres.Value) = False Then
MsgBox "email adresi yanl&#305;&#351;", vbInformation, "uyar&#305;"
End If
End Sub

Function IsEmailAddress(ByVal strEmailAddr As String) As Boolean

' Checks if strEMailAddr could represent a valid e-mail address.
' Does not check validity of domain name.

' Allowed characters.
Const cstrValidChars As String = "@_-.0123456789abcdefghijklmnopqrstuvwxyz"
Const cstrDot As String = "."
Const cstrAt As String = "@"
' Minimum length of an e-mail address (a@a.ca).
Const cintAddressLenMin As Integer = 6

Dim strValidChars As String
Dim booFailed As Boolean
Dim intPos As Integer
Dim intI As Integer

' Convert to lowercase.
strEmailAddr = LCase(strEmailAddr)
' Check that strEMailAddr contains allowed characters only.
For intI = 1 To Len(strEmailAddr)
If InStr(cstrValidChars, Mid(strEmailAddr, intI, 1)) = 0 Then
booFailed = True
End If
Next
If booFailed = False Then
' Check that the first character is not cstrAt.
booFailed = Left(strEmailAddr, 1) = cstrAt
If booFailed = False Then
' Check that the first character is not a cstrDot.
booFailed = Left(strEmailAddr, 1) = cstrDot
If booFailed = False Then
' Check that length of strEMailAddr exceeds
' minimum length of an e-mail address.
intPos = Len(strEmailAddr)
booFailed = (intPos < cintAddressLenMin)
If booFailed = False Then
' Check that none of the last two characters of strEMailAddr is a dot.
booFailed = (InStr(intPos - 1, strEmailAddr, cstrDot) > 0)
If booFailed = False Then
' Check that strEMailAddr does contain a cstrAt.
intPos = InStr(strEmailAddr, cstrAt)
booFailed = (intPos = 0)
If booFailed = False Then
' Check that strEMailAddr does contain one cstrAt only.
booFailed = (InStr(intPos + 1, strEmailAddr, cstrAt) > 0)
If booFailed = False Then
' Check that the character leading cstrAt is not cstrDot.
booFailed = (Mid(strEmailAddr, intPos - 1, 1) = cstrDot)
If booFailed = False Then
' Check that the character following cstrAt is not cstrDot.
booFailed = (Mid(strEmailAddr, intPos + 1, 1) = cstrDot)
If booFailed = False Then
' Check that strEMailAddr contains at least one cstrDot
' following the sign after cstrAt.
booFailed = Not (InStr(intPos, strEmailAddr, cstrDot) > 1)
End If
End If
End If
End If
End If
End If
End If
End If
End If

IsEmailAddress = Not booFailed

End Function
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Sn beab05
Bu kodu nereye yerleştireceğiz Hatalarla karşılaşıyorum Yardımcı olursanız sevinirim.saygılar
Merhaba;

Kodu her şekilde kullanabilirsiniz, isterseniz aktif metin kutusunun güncelleştirme sonrasına isterseniz başka bir metin kutusu denetim kaynağında. Çok basit ve pratiktir, karakterleri oto değiştirmek amacınıza uyuyorsa tabii ki;)
 
Katılım
24 Ağustos 2007
Mesajlar
120
Excel Vers. ve Dili
2003 türkçe
Sn gulsum1
&#199;ok te&#351;ekk&#252;r ederim ,ger&#231;ekten faydal&#305; bir kod.sayg&#305;lar
 
Katılım
24 Ağustos 2007
Mesajlar
120
Excel Vers. ve Dili
2003 türkçe
sn beab05
Sizin verdiğiniz replace = harf karakterini değiştirme formülünü formda yerleştirdim aşağıdaki şekilde ikaz veriyor.Nedenini anlıyamadım.Yardımcı olursanız sevinirim.
 
Katılım
22 Ocak 2007
Mesajlar
815
Excel Vers. ve Dili
2003
Private Sub kelimeler_KeyPress(KeyAscii As Integer)
If KeyAscii = 246 Then '(&#246;) ise
KeyAscii = 211 '(o) yap
ElseIf KeyAscii = 231 Then '(&#231;) ise
KeyAscii = 99 '(c) yap
ElseIf KeyAscii = 351 Then '(&#351;) ise
KeyAscii = 115 '(s) yap
ElseIf KeyAscii = 252 Then '(&#252;) ise
KeyAscii = 117 '(u) yap
ElseIf KeyAscii = 287 Then '(&#287;) ise
KeyAscii = 103 '(g) yap
ElseIf KeyAscii = 305 Then '(&#305;) ise
KeyAscii = 105 '(i) yap
End If
End Sub

istedi&#287;in bu
 
Katılım
22 Ocak 2007
Mesajlar
815
Excel Vers. ve Dili
2003
buda senin ekledi&#287;in son &#246;rnek san&#305;r&#305;m sen ad&#305; soyad&#305; alan&#305;ndaki veriyi ingilizce karaktere &#231;evireceksin

Private Sub Ad&#305;_soyad&#305;_Exit(Cancel As Integer)
Dim deger As String
Dim deger1 As String
Dim deger2 As String
say = Len(Me.Ad&#305;_soyad&#305;)
For i = 1 To say
deger = Mid(Me.Ad&#305;_soyad&#305;, i, 1)
deger1 = Replace(Replace(Replace(deger, "&#246;", "o"), "&#287;", "g"), "&#351;", "s")
deger2 = deger2 + deger1
Next i
Me.de&#287;er = deger2
End Sub

daha basit bir hali vard&#305;r eminim bu benim na&#231;izane &#246;rne&#287;im
 
Üst