Hücreye Girilen Verinin Karakter Sayısını Belirleme

Katılım
11 Aralık 2009
Mesajlar
1
Excel Vers. ve Dili
office 2007
merhaba arkadaşlar;
konunun yeri belki doğru olmayabilir..bunun için şimdiden özür dilerim...
yapmak istediğim olay...

hücreye girilen verinin karakter sayısını belirleme..

örnek olarak;

a2 hücresine benim belirlediğim sayıda karakter ( 10 karakterden fazla girilmemesi gibi ) girilmesi..
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Veri / Doğrulama / İzin verilen seçeneğinden Metin Uzunluğunda Arasında Yada Eşit bölümünden karakter sayısına sınırlama koyabilirsiniz..

.
 
Katılım
14 Ekim 2008
Mesajlar
6
Excel Vers. ve Dili
EXCEL 2007 ingilizce
merhaba,
benim de bir sorum olacak.
hücreye girilecek veriye tamamen sınırlama getirmek istiyorum. şöyle ki ;
b kolonuna girilecek tüm veriler aynı formatta ve aynı uzunlukta olacak. örnegin;

TT-PRF-HRP-012-00

yani :

2harf-3harf-3harf-3rakam-2rakam

toplam 17 karakter. şekil dışı bir veri girildiğinde hata versin mesela.

bu mumkun mudur acaba?
şimdiden teşekkurler.
selamlar...
 
Katılım
3 Temmuz 2008
Mesajlar
15
Excel Vers. ve Dili
2003 11.6550
Merhaba,

Veri / Doğrulama / İzin verilen seçeneğinden Metin Uzunluğunda Arasında Yada Eşit bölümünden karakter sayısına sınırlama koyabilirsiniz..

.
Konu başlığı geçmiş tarihli de olsa öğrenilmeyen bilgi her zaman yenidir.
Benim hazırlamam gereken bir tablom var satıra girilen fazladan karakterler otomatik olarak yok sayılamaz mı

Satırımda en fazla 6 karakter olacak 7. karakteri girdiğimde ben girsem dahi silebilir mi
Örnek: MAHMUTER yazdım ama MAHMUT olacak şekilde
Teşekkürler
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Sayfanın kod bölümüne aşağıdaki kodları yapıştırınız:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Len(Target) > 6 Then
Target = Left(Target, 6)
End If
End Sub
Yalnız bu kodlar sayfadaki tüm hücreler için geçerlidir. Bu kodları kaydettikten sorna herhangi bir hücreye girdiğiniz tüm veriler, türüne bakılmaksızın ilk 6 karakteri kaydedilir.

eğer sadece belirli hücrelerde ya da sütunlarda/satırlarda bu işlem olacaksa onu target içine range olarak belirtmeniz gerekir.

Örneğin sadece B sütunu için aşağıdaki şekilde:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b:b")) Is Nothing Then Exit Sub
If Len(Target) > 6 Then
Target = Left(Target, 6)
End If
End Sub
C5, C18 ve D6 hücreleri için ise aşağıdaki şekidle olmalıdır:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("c5, c18, d6")) Is Nothing Then Exit Sub
If Len(Target) > 6 Then
Target = Left(Target, 6)
End If
End Sub
 
Katılım
3 Temmuz 2008
Mesajlar
15
Excel Vers. ve Dili
2003 11.6550
Sayfanın kod bölümüne aşağıdaki kodları yapıştırınız:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Len(Target) > 6 Then
Target = Left(Target, 6)
End If
End Sub
Yalnız bu kodlar sayfadaki tüm hücreler için geçerlidir. Bu kodları kaydettikten sorna herhangi bir hücreye girdiğiniz tüm veriler, türüne bakılmaksızın ilk 6 karakteri kaydedilir.

eğer sadece belirli hücrelerde ya da sütunlarda/satırlarda bu işlem olacaksa onu target içine range olarak belirtmeniz gerekir.

Örneğin sadece B sütunu için aşağıdaki şekilde:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("b:b")) Is Nothing Then Exit Sub
If Len(Target) > 6 Then
Target = Left(Target, 6)
End If
End Sub
C5, C18 ve D6 hücreleri için ise aşağıdaki şekidle olmalıdır:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("c5, c18, d6")) Is Nothing Then Exit Sub
If Len(Target) > 6 Then
Target = Left(Target, 6)
End If
End Sub
Kardeş Özür dilerim tabloya uygulayamadım . Tablomu ekte sunuyorum formülü D sütununa 15 karakterle sınırlandıracak şekilde uyarlarsanız sevinirim.Selam ve dua ile
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Bu hücreye uygulanacak bir işlem değildir. Hangi sayfada uygulayacaksanız sayfa sekmesinin üstünde sağ tıklayıp Kod görüntüle deyin ve bu kodları çıkan sayfaya yapıştırın:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Intersect(Target, Range("c5, c18, d6")) Is Nothing Then Exit Sub 
If Len(Target) > 6 Then 
Target = Left(Target, 6) 
End If 
End Sub
 
Üst