Veri Doğrulama
Microsoft Excel, elektronik tablo verilerini otomatik filtreleme veya doğrulama konularında bazı iyi özellikler sunar.
Veri doğrulama, çalışma sayfasına girilen verilere ilişkin kurallar belirleme yeteneğidir.
Veri Doğrulama Türleri ve Uygulama
Microsoft Excel, çeşitli farklı veri doğrulama türlerini desteklemektedir. Her tür, bir hücre veya hücre aralığına hangi veri türünün girileceğini kontrol etmek için kullanılır. Aşağıda, aşağıdaki durumların doğrulanma şeklini gösteren kod örnekleri bulunmaktadır:
- Sayıların tam olduğunu yani ondalık kısmın olmadığını doğrulayın.
- Ondalık sayıların doğru yapısını takip ettiğini doğrulayın. Kod örneği, belirli bir aralıkta hücrelerin iki ondalık basamağa sahip olması gerektiğini tanımlar.
- Değerlerin belirli bir değerler listesine sınırlı olduğunu doğrulayın.
- Tarihlerin belirli bir aralıkta olmasını doğrulayın.
- Zamanın belirli bir aralıkta olduğunu doğrulayın.
- Bir metnin belirli bir karakter uzunluğunda olduğunu doğrulayın.
Microsoft Excel ile Veri Doğrulama
Microsoft Excel kullanarak doğrulamalar oluşturmak için:
-
Bir çalışsayfada, doğrulama uygulamak istediğiniz hücreleri seçin.
-
Veri menüsünden, Doğrulama‘yı seçin. Doğrulama iletişim kutusu görüntülenir.
-
Ayarlar sekmesini tıklayın ve aşağıda gösterildiği gibi ayarları girin.
Veri doğrulama ayarları
Aspose.Cells ile Veri Doğrulama
Veri doğrulaması, çalışma tablolarına girilen bilgileri doğrulamak için güçlü bir özelliktir. Veri doğrulaması ile geliştiriciler, kullanıcılara bir liste seçeneği sunabilir, veri girişlerini belirli bir tür veya boyuta sınırlayabilir, vb. Aspose.Cells’de her Worksheet sınıfı, bir Validations öğesine sahiptir, bu da bir Validation nesneler koleksiyonunu temsil eder. Doğrulama ayarını yapmak için Validation nesnesinin bazı özelliklerini ayarlayın:
- Type: Doğrulama türünü temsil eder, bu da ValidationType numaralandırmasındaki önceden tanımlanmış değerlerden biri kullanılarak belirtilebilir.
- Operator: doğrulamada kullanılacak olan operatörü temsil eder. Bu, önceden tanımlanmış değerlerden birini kullanarak OperatorType numaralandırmasında belirtilebilir.
- Formula1: veri doğrulamanın ilk kısmıyla ilişkili değeri veya ifadeyi temsil eder.
- Formula2: veri doğrulamanın ikinci kısmıyla ilişkili değeri veya ifadeyi temsil eder.
Validation nesnesinin özellikleri yapılandırıldığında, geliştiriciler oluşturulan doğrulamayı kullanarak doğrulanacak hücre aralığı hakkında bilgi depolamak için CellArea yapısını kullanabilirler.
Veri Doğrulama Türleri
Veri doğrulama, her hücreye işletme kurallarını yerleştirmenize olanak tanır, böylece yanlış girişler hata mesajlarına neden olur. İş kuralları, bir işletmenin nasıl çalıştığını belirleyen politika ve prosedürlerdir. Aspose.Cells, tüm önemli veri doğrulama türlerini destekler.
ValidationType numaralandırmasının aşağıdaki üyeleri bulunmaktadır:
Üye Adı | Açıklama |
---|---|
ANY_VALUE | Her türden bir değeri belirtir. |
WHOLE_NUMBER | Tüm sayılar için doğrulama tipini belirtir. |
DECIMAL | Ondalık sayılar için doğrulama türünü belirtir. |
LIST | Açılır liste için doğrulama türünü belirtir. |
DATE | Tarihler için doğrulama türünü belirtir. |
TIME | Saatler için doğrulama türünü belirtir. |
TEXT_LENGTH | Metnin uzunluğu için doğrulama tipini belirtir. |
CUSTOM | Özel doğrulama türünü belirtir. |
Programlama Örneği: Tamsayı Veri Doğrulaması
Bu doğrulama türüyle, kullanıcılar belirli bir aralıkta sadece tam sayıları geçerli hücrelere girebilir. Aşağıdaki kod örnekleri, WHOLE_NUMBER doğrulama türünün nasıl uygulanacağını gösterir. Örnek, Microsoft Excel kullanılarak oluşturan aynı veri doğrulamasını Aspose.Cells kullanarak oluşturur.
Programlama Örneği: Ondalık Sayı Veri Doğrulaması
Bu tür doğrulama ile kullanıcı, ondalık sayıları doğrulanmış hücrelere girebilir. Örnekte, kullanıcı yalnızca ondalık değer girmesi için kısıtlanmıştır ve doğrulama alanı A1:A10’dur.
Programlama Örneği: Liste Veri Doğrulaması
Bu tür doğrulama, kullanıcının bir açılır listeden değer girmesine olanak tanır. Bir liste sağlar: veri içeren bir dizi satır. Kullanıcılar yalnızca listeden değer seçebilir. İlk çalışma sayfasındaki doğrulama alanı A1:A5 hücre aralığıdır.
Burada önemli olan nokta, Validation.setInCellDropDown özelliğini true olarak ayarlamanızdır.
Programlama Örneği: Tarih Veri Doğrulaması
Bu tür doğrulama ile, kullanıcılar belirli bir aralıkta veya belirli kriterlere uyan tarih değerlerini doğrulanmış hücrelere girerler. Örnekte, kullanıcının 1970 ila 1999 arasında tarih girmesi kısıtlanmıştır. Burada doğrulama alanı B1 hücresidir.
Programlama Örnekleri: Zaman Veri Doğrulaması
Bu tür doğrulama ile, kullanıcılar belirli bir aralıkta veya belirli kriterlere uyan saatleri doğrulanmış hücrelere girebilirler. Örnekte, kullanıcının 09:00 ile 11:30 arasında zaman girmesi kısıtlanmıştır. Burada doğrulama alanı B1 hücresidir.
Programlama Örnekleri: Metin Uzunluğu Veri Doğrulaması
Bu tür doğrulama ile kullanıcılar, doğrulanan hücrelere belirli bir uzunluktaki metin değerlerini girebilirler. Örnekte, kullanıcıya en fazla 5 karakter içeren dize değerlerini girmesi engellenir. Doğrulama alanı B1 hücresidir.
Veri Doğrulama Kuralları
Veri doğrulamaları uygulandığında, doğrulama sonucu farklı değerler atayarak kontrol edilebilir. Cell.GetValidationValue() kullanılarak doğrulama sonucu alınabilir. Aşağıdaki örnek, bu özelliği farklı değerlerle gösterir. Test amacıyla aşağıdaki bağlantıdan örnek dosya indirilebilir:
SampleDataValidationRules.xlsx
Örnek Kod
Bir hücredeki doğrulamanın açılır kutu olup olmadığını kontrol et
Gördüğümüz gibi hücre içinde uygulanabilir birçok doğrulama türü bulunmaktadır. Bir doğrulamanın açılır kutu olup olmadığını kontrol etmek istiyorsanız, Validation.InCellDropDown özelliği buna test etmek için kullanılabilir. Aşağıdaki örnek kod bu özelliğin kullanımını göstermektedir. Test için deneme dosyasını aşağıdaki bağlantıdan indirebilirsiniz:
sampleDataValidationRules.xlsx
Mevcut Doğrulama Alanına Hücre Alanı Ekle
Mevcut Validation öğesine CellArea eklemek isteyebileceğiniz durumlar olabilir. Bunun için, Validation.AddArea(CellArea) kullanılır. Aspose.Cells, yeni alanın zaten var olup olmadığını görmek için tüm mevcut alanları kontrol eder. Eğer dosyada çok sayıda doğrulama varsa, bu performans düşüşüne neden olabilir. Bunun önüne geçmek için API, Validation.AddAreaCellArea cellArea, bool checkIntersection, bool checkEdge) metodunu sağlar. checkIntersection parametresi, verilen alanın mevcut doğrulama alanlarıyla kesişip kesişmediğini kontrol edip etmeyeceğini gösterir. false olarak ayarlanması, diğer alanların kontrol edilmesini devre dışı bırakır. checkEdge parametresi, uygulanan alanların kontrol edilip edilmeyeceğini gösterir. Yeni alan üst-sol köşe alanı olursa, dahili ayarlar yeniden oluşturulur. Yeni alanın üst-sol köşe alanı olmayacağından emin değilseniz, bu parametreyi false olarak ayarlayabilirsiniz.
Aşağıdaki kod örneği, Validation.AddAreaCellArea cellArea, bool checkIntersection, bool checkEdge) metodunun, yeni CellArea eklemek için kullanılmasını göstermektedir.
Kaynak ve çıktı excel dosyaları referans için ekte sunulmuştur.