NOKTALAMA İŞARETİ YAZDIRMAK İSTEMİYORUM

Katılım
5 Haziran 2018
Mesajlar
85
Altın Üyelik Bitiş Tarihi
05/06/2023
Merhaba GÇB Numaralarına * - / boşluk vb karakter girsin istemiyorum.
veri doğrulamadan yapmaya calıştım beceremedim
18350300ex00000011 gibi yazsın harf ve rakama izin versin sadece nasıl yapabilirim
 
Katılım
5 Haziran 2018
Mesajlar
85
Altın Üyelik Bitiş Tarihi
05/06/2023
bu konu biraz acil hala bulamadım sadece rakam yada harfe izin veriyor
sadece ikisini izin versin istiyorum
 

İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,104
Excel Vers. ve Dili
Excel, 365 - İngilizce
Yazdırılmayacak şeyleri alt alta yazıp, bu listeye bir ad tanımlama yapın. Bu listenin adı liste olsun.

Veri doğrulamanın custom (Türkçesini bilmiyorum) bölümüne:

=COUNTIF(liste;A1)=0 formülünü yazın.

.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,237
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Merhaba. Makro tercih ederseniz aşağıdaki gibi bir çözümünüz var.
GÇB numaralarını A1:A5 arasına yazacağınız varsayıldı.

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, [a1:a5]) Is Nothing Then Exit Sub
    
    Application.EnableEvents = False
    
    If Not GCB(Target) Then
        Target.ClearContents
    End If
    
    Application.EnableEvents = True
End Sub

Private Function GCB(R As Range) As Boolean
    Set reg = CreateObject("VBScript.RegExp")
    
    reg.ignorecase = False
    reg.Pattern = "^\d{8}ex\d{8}$"
    
    GCB = reg.test(R)
End Function
 
Katılım
6 Mart 2005
Mesajlar
6,238
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
Engelleneçek işaretler sınırlı ise.A1 hücresinde Veri doğrulama özel.Formül alanına kopyalayınız.Uygulamak istediğiniz alanlara A1 hücresinde kopyala Özel yapıştır.Doğrulamayı seçeneği ile çoğaltınız.
Kod:
=VE(A1<>"*";A1<>"-";A1<>"/";A1="")
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,206
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Veri Doğrulama ile yapmak olası

A1:A10 arasında yapmak isterseniz

veri doğrulama/özel/formül :

Kod:
=ESAYIYSA(TOPLA.ÇARPIM(MBUL(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);"01234567890ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVWXYZ")))
Formüldeki A1 yerine Veridoğrulamanın başladığı hücrenin ilk adresini kullanmalısınız. Örneğin C10:C100 arasındaysa veri doğrulamanız formüldeki A1 yerine C10 kullanmalısınız.
 
Katılım
5 Haziran 2018
Mesajlar
85
Altın Üyelik Bitiş Tarihi
05/06/2023
hepinize çok teşekkür ederim ama beceremedim izin veriyor hepsi de
Merhaba,

Veri Doğrulama ile yapmak olası

A1:A10 arasında yapmak isterseniz

veri doğrulama/özel/formül :

Kod:
=ESAYIYSA(TOPLA.ÇARPIM(MBUL(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);"01234567890ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVWXYZ")))
Formüldeki A1 yerine Veridoğrulamanın başladığı hücrenin ilk adresini kullanmalısınız. Örneğin C10:C100 arasındaysa veri doğrulamanız formüldeki A1 yerine C10 kullanmalısınız.
=ESAYIYSA(TOPLA.ÇARPIM(MBUL(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);"01234567890ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVWXYZ")))
bu formülün ingilizcesini googledan gordum ikisini de denedim olmuyor Necdet Bey örneğin * yapıyorum izin veriyor c5 hücresi diye değiştiriyorum.
bende
=EMETİNSE(ESAYIYSA(C1:C500)) şeklinde denedim ilk kez basınca uyarıyor
İkinciden sonra yazmaya devam ediyor
 
Katılım
5 Haziran 2018
Mesajlar
85
Altın Üyelik Bitiş Tarihi
05/06/2023
Engelleneçek işaretler sınırlı ise.A1 hücresinde Veri doğrulama özel.Formül alanına kopyalayınız.Uygulamak istediğiniz alanlara A1 hücresinde kopyala Özel yapıştır.Doğrulamayı seçeneği ile çoğaltınız.
Kod:
=VE(A1<>"*";A1<>"-";A1<>"/";A1="")
merhaba; bu formül işe yarıyor ama tüm noktalama işaretleri için çok uzun sürüyor
Birde =VE(A1:a100<>"*";A1:A100<>"-";A1:A100<>"/";A1:A100="") yapınca işe yaramıyor hücre aralığını nasıl verebilirim
 
Katılım
5 Haziran 2018
Mesajlar
85
Altın Üyelik Bitiş Tarihi
05/06/2023
Yazdırılmayacak şeyleri alt alta yazıp, bu listeye bir ad tanımlama yapın. Bu listenin adı liste olsun.

Veri doğrulamanın custom (Türkçesini bilmiyorum) bölümüne:

=COUNTIF(liste;A1)=0 formülünü yazın.

.
merhaba Bu işe yarıyor teşekkür ederim.
=EĞERSAY(LİSTE;A1:A100) deneyince olmuyor aralık vermem gerek aylık gçb miz 15 20 satır olabiliyor
her satır için ayrı bir veri doğrulama yapmak daha mı kolaydır yada
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Belirttiğiniz formülü, =EĞERSAY(liste;A1:A100)=0 şeklinde değil,
A1:A100 aralığı seçiliyken =EĞERSAY(liste;A1)=0 şeklinde uygulayınca istenilen sonucu almanız gerekir.
 
Katılım
6 Mart 2005
Mesajlar
6,238
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
İsteğiniz bu şekilde bir sınırlandırma değil mi?Çok fazla değilse işaretler ilave edilebilir.Dosya da dogulu rengi olan alanda deneyiniz.
 

Ekli dosyalar

Katılım
5 Haziran 2018
Mesajlar
85
Altın Üyelik Bitiş Tarihi
05/06/2023
Merhaba. Makro tercih ederseniz aşağıdaki gibi bir çözümünüz var.
GÇB numaralarını A1:A5 arasına yazacağınız varsayıldı.

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, [a1:a5]) Is Nothing Then Exit Sub
   
    Application.EnableEvents = False
   
    If Not GCB(Target) Then
        Target.ClearContents
    End If
   
    Application.EnableEvents = True
End Sub

Private Function GCB(R As Range) As Boolean
    Set reg = CreateObject("VBScript.RegExp")
   
    reg.ignorecase = False
    reg.Pattern = "^\d{8}ex\d{8}$"
   
    GCB = reg.test(R)
End Function
teşekkür ederim
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,206
Excel Vers. ve Dili
Ofis 365 Türkçe
hepinize çok teşekkür ederim ama beceremedim izin veriyor hepsi de


=ESAYIYSA(TOPLA.ÇARPIM(MBUL(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);"01234567890ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVWXYZ")))
bu formülün ingilizcesini googledan gordum ikisini de denedim olmuyor Necdet Bey örneğin * yapıyorum izin veriyor c5 hücresi diye değiştiriyorum.
bende
=EMETİNSE(ESAYIYSA(C1:C500)) şeklinde denedim ilk kez basınca uyarıyor
İkinciden sonra yazmaya devam ediyor
* Özel bir karakter olduğu için hiç dikkat etmemiştim, nasıl kontrol edilir bilemiyorum. * haricinde isteğinizi karşılıyor verdiğim fonksiyon
hepinize çok teşekkür ederim ama beceremedim izin veriyor hepsi de


=ESAYIYSA(TOPLA.ÇARPIM(MBUL(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);"01234567890ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVWXYZ")))
bu formülün ingilizcesini googledan gordum ikisini de denedim olmuyor Necdet Bey örneğin * yapıyorum izin veriyor c5 hücresi diye değiştiriyorum.
bende
=EMETİNSE(ESAYIYSA(C1:C500)) şeklinde denedim ilk kez basınca uyarıyor
İkinciden sonra yazmaya devam ediyor
Merhaba,

Aşağıdaki gibi dener misiniz?

Kod:
=UZUNLUK(A1)=UZUNLUK(YERİNEKOY(A1;"*";""))*ESAYIYSA(TOPLA.ÇARPIM(MBUL(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);"0123456789ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVWXYZ")))
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,521
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Örnek dosya olmadan, 7 üstadın yazdığı çözüm önerileri her türlü takdirin üzerindedir.

Sayın papatya35'in bir kaç satırlık veri olan bir dosyayı eklemesini, forumdaşların yararlanması için beklemekteyim.

Emeği geçenlere ve katkı verenlere; teşekkürlerimi, sevgi ve saygılarımı sunarım.
 
Katılım
5 Haziran 2018
Mesajlar
85
Altın Üyelik Bitiş Tarihi
05/06/2023
Örnek dosya olmadan, 7 üstadın yazdığı çözüm önerileri her türlü takdirin üzerindedir.

Sayın papatya35'in bir kaç satırlık veri olan bir dosyayı eklemesini, forumdaşların yararlanması için beklemekteyim.

Emeği geçenlere ve katkı verenlere; teşekkürlerimi, sevgi ve saygılarımı sunarım.
Merhaba
İstemiş olduğunuz dosyayı ekliyorum.
 

Ekli dosyalar

Üst