Ev Social Media Excel VBA IsDate İşlevini anlama - mankenler

Excel VBA IsDate İşlevini anlama - mankenler

Video: Microsoft Excel VBA - Function 33 - ISDATE() 2025

Video: Microsoft Excel VBA - Function 33 - ISDATE() 2025
Anonim

VBA'nın IsDate işlevi, bir metin dizesinin bir tarih olarak yorumlanıp yorumlanamayacağını söyler. Örneğin, aşağıdaki ifadelerin tümü doğru olarak değerlendirilir:

IsDate ("5/25/2015") IsDate ("16 Ocak") IsDate ("12-1") IsDate ("12/1/15") IsDate ("2/30") IsDate ("30/2")

Son iki örnekte, IsDate'in gün ve ayın sırası hakkında seçici olmadığını fark ettik. Bu dizelerin her ikisi de tarih olarak yorumlanabilir, bu nedenle IsDate True değerini döndürür (sistem tarih format ayarlarınızdan bağımsız olarak).

İşte bir Microsoft Destek makalesinin bazı bilgileri:

VBA tarih işlevleri IsDate, Biçim, CDate ve CVDate, OLE Otomasyonu'nda (OleAut32.dll) bulunan bir işlevi kullanır. Bu işlev, tarihi temsil eden dizedeki her ayrılmış değerin simgeselleştirilmesi ile olası tüm tarih formatlarını arar ve girdinin bir Tarih olarak gösterilip gösterilemeyeceğini gösteren bir Boolean değeri döndürür.

Bu, 2 basamaklı bir yılı içeren bir tarihi yorumlamak için fonksiyonu kullanırken hatırlamak önemlidir. Farklı Yerel Ayarlar çeşitli tarih biçimlerini kullanır (yani, gg / aa / yy, yy / aa / gg, " DD MMM YY " , " YY MMM DD " vb.) Ve bu nedenle işlev, geçerli bir tarih bulana veya tüm olasılıkları tükenene dek tüm pozisyonlardaki basamakları dener.

IsDate bir dizgeyi tarih olarak algıladığından, dizenin güvenilir bir şekilde bir tarihe dönüştürülebileceği anlamına gelmez. Bazı durumlarda, sonuç belirsizdir. Örneğin, bu ifade ne için?

IsDate ("29 Şub 01")

29 Şubat 2001 geçerli bir tarih değildir. Bununla birlikte, bu ifade 1 Şubat 1929 (ve 2 Ocak 1929) geçerli tarihler olduğu için True değerini döndürür. Ve aynı 2029'da aynı tarihler.

IsDate dokümantasyonu için bir arama boş geldi. Sınama dayanarak, IsDate ayırıcı karakterler olarak eğik çizgi (/), tire (-), virgül (), nokta (.) Ve boşluk olarak aşağıdakilerin herhangi birini kabul eder.

Bu nedenle, aşağıdaki ifadeler True değerini döndürür:

IsDate ("5.1") IsDate ("30 6") IsDate ("30, 6") IsDate ("1/2")

Ancak,

IsDate ("5. 1. 05")

Bununla birlikte açıkçası, bu ifade False döndürür:

IsDate ("5. 1. 05")

("5. 1. 2005")

Kullanıcının bir tarih girdiği bir InputBox içeren bir UserForm oluşturduğunuzu varsayalım. IsDate'i girişi doğrulamak için kullanmanın çok güvenilir olmadığı açık olmalıdır.

IsDate'in zaman değerlerini de kapsadığını fark ettiğinizde işleriniz daha da kafa karıştırıcı hale gelir. (IsTime işlevi yoktur.) Böylece, aşağıdaki ifadelerin hepsi doğru döndürür:

IsDate ("4: 45") IsDate ("4.45") IsDate ("4 45") IsDate ("4/45 ") IsDate (" 24: 45 ")

IsDate (" 24: 45 ")

Bu ifadeler False döndürür:

IsDate (" 4: 60 ") IsDate bir Aralık bağımsız değişkenini ilettiğinizde bu türden garip şeyleri sergileyin. Örneğin:

IsDate (Range ("A1"))

IsDate'in bir tarih veya saat içeren hücreleri tanımlamada mükemmel bir güvenilirliği var gibi görünüyor. Örneğin, tarih olarak 5. 1 içeren bir hücreyi tanımlamaz. Kodunuzun bir dize bir tarih olarak yorumlanabilir olup olmadığını belirlemek gerekiyorsa, en iyi çözüm bu dize bir hücreye koymak ve daha sonra hücre içeriğini kontrol etmek için kod yazmaktır.

Excel VBA IsDate İşlevini anlama - mankenler

Editörün Seçimi

Genişletme Bağlantılar ve Bina Robotları için Pinouts - mankenler

Genişletme Bağlantılar ve Bina Robotları için Pinouts - mankenler

Eğer bir robot inşa ediyorsanız, çok sayıda elektrik bağlantısı, bu yüzden çok sayıda iğne ile uğraşıyorsunuz. Aşağıdaki tabloda, genişleme konektörleri ve pim numaraları için sinyal gösterilmektedir. İstenmeyen çapraz bağlantıları önlemeye yardımcı olabilir. Genişletme Konnektörü Pin Numarası Sinyal Genleşmesi Konnektör Pin Numarası Sinyal 1, 2 Toprak 16 P11 Yeşil LED 3, 4 + 5 ...

Dizinler içeren Kablosuz Erişim Noktalarını bulma - mankenler

Dizinler içeren Kablosuz Erişim Noktalarını bulma - mankenler

Sıcak noktaları bulma konusunda çevrimiçi dizinler, gezinmek için mükemmel bir araçtır. ABD, Kanada ve dünyadaki artan sayıda sıcak nokta. Size kolaylık sağlamak için, bu dizinlerden bazıları. Dizin Notları JiWire WiFi Bulucu 144 ülkede ücretsiz ve ücretli Wi-Fi yerleri dizini sağlar. AT & T ...

Ham Radyoda genel Sınıf Frekans Ayrıcalıkları - mankenler

Ham Radyoda genel Sınıf Frekans Ayrıcalıkları - mankenler

Yakında yapmadıysanız, siz Yükseltmeyi düşünüyorum. Aşağıdaki tabloda gösterildiği gibi, yüksek frekanslı (HF) bantlarda kullanmak için daha fazla frekansa sahipsiniz. Tüm lisans sınıfları için ABD frekansı ve mod ayrıcalıklarının eksiksiz bir listesi, Amerikan Radyo Röle Ligi'nden (ARRL) edinilebilir. Bant Frekansları ...

Editörün Seçimi

Adobe Flash CS6'da Maske Katmanlarını Kullanma - mankenler

Adobe Flash CS6'da Maske Katmanlarını Kullanma - mankenler

Adobe Flash CS6'da maskeleme kavramı Bir parçanın bölümlerini gizlemek ya da ortaya çıkarmak için bir şekli (ya da şekilleri) kullanır - tıpkı evinizdeki küçük bir pencere aracılığıyla dışarıdan bakmak gibi. Pencere boyutu, içerideyken görebileceğiniz şeyi sınırlar. Flash, özel bir katman özelliklerine sahiptir ...

Flash CS5 3D Rotasyon Aletinin Kullanımı - mankenler

Flash CS5 3D Rotasyon Aletinin Kullanımı - mankenler

Adobe'nin kapsamlı çizim ve animasyon yetenekleri Flash Creative Suite 5, Flash'ın 3D Döndürme aracıyla büyük ölçüde geliştirilebilir. 3B Döndürme aracı, sembolü x, y ve z eksenleri etrafında döndürmek ve dönüştürmek için herhangi bir film klibi örneğinde kullanılabilir. Bir film klibi örneğini 3D olarak oluşturmak için bunları izleyin ...

Flash CS5 3D Çeviri Aletini Kullanma - aumlalar

Flash CS5 3D Çeviri Aletini Kullanma - aumlalar

In 3D Döndürme aracının aksine Flash CS5 film kliplerini bir eksen etrafında döndüren Adobe Flash Creative Suite 5, 3D Çeviri aracı, bir film klibini algılanan mesafeyi ve sahnedeki diğer nesnelere göre derinliğini değiştirmek için belirli bir eksende kaydırır. Bu kavramı üçlü düşünün ...

Editörün Seçimi

Pratik İlköğretim Sınavı-Grafik Çözümleri - mankenler

Pratik İlköğretim Sınavı-Grafik Çözümleri - mankenler

Praxis İlköğretim sınavının Matematik bölümü bir dizi çizgide bir eşitsizliğe çözüm bulmanızı gerektiren bir soru. Başlamak için, çözümdeki sayıya bir nokta koyarsınız. Sembolü> veya

Pratik İlk Öğretim Sınavı-Ölüm Şekilleri - mankenler

Pratik İlk Öğretim Sınavı-Ölüm Şekilleri - mankenler

Praxis İlköğretim Matematik ve Bilim bölümleri Eğitim sınavı, farklı ölçme şekillerine aşina olmanız gereken sorular içerir. Ölçümler, çeşitli tiplerde tanımlanabilir. Mesafe için İngilizce sistem birimleri inç, feet, metre ve mil içerir. Bunlar birbirine dayanır. Bir ayak 12 ...

Pratik İlk Öğretim Sınavı-Akıcılık - mankenler

Pratik İlk Öğretim Sınavı-Akıcılık - mankenler

Praxis İlköğretim sınavı, yardımcı stratejilerinizi test eden sorular içerir öğrenciler akıcılıklarını İngilizce olarak geliştirirler. Bu stratejiler, grafik düzenleyicileri kullanarak ve çıkarımlar yapmayı içerebilir. Akıcı bir okuyucu, sınıf düzeyinde bir metni doğruluk, çabukluk ve ifade ile okuyabilir.