Excel VBAIsDate関数を理解する

VBAのIsDate関数は、テキスト文字列を日付として解釈できるかどうかを示していると思われます。たとえば、次の式はすべてTrueと評価されます。

IsDate(“ 5/25/2015”)
IsDate(「1月16日」)
IsDate(“ 12-1”)
IsDate(“ 12/1/15”)
IsDate(“ 2/30”)
IsDate(“ 30/2”)

最後の2つの例では、IsDateが日と月の順序を気にしないことに注意してください。これらの文字列は両方とも日付として解釈される可能性があるため、IsDateは(システムの日付形式の設定に関係なく)Trueを返します。

Microsoftサポートの記事からの情報は次のとおりです。

VBA日付関数IsDate、Format、CDate、およびCVDateは、OLEオートメーション(OleAut32.dll)にある関数を利用します。この関数は、日付を表す文字列内の区切られた各値をトークン化することにより、可能なすべての日付形式を検索し、入力を日付として表すことができるかどうかを示すブール値を返します。

これは、関数を使用して2桁の年を含む日付を解釈するときに覚えておくことが重要です。異なるロケールはさまざまな日付形式(つまり、mm / dd / yy、yy / mm / dd、DD MMM YY YY MMM DD など)を使用するため、関数は、関数が有効な日付を検出したか、すべての可能性を使い果たしました。

IsDateが文字列を日付として認識するからといって、文字列を確実に日付に変換できるとは限りません。場合によっては、結果があいまいになります。たとえば、この式はどうですか?

IsDate(“ 29-Feb-01”)

2001年2月29日は有効な日付ではありません。ただし、1929年2月1日(および1929年1月2日)が有効な日付であるため、この式はTrueを返します。そして、2029年の同じ日付もそうです。

IsDateドキュメントの検索が空になりました。テストに基づいて、IsDateは、スラッシュ(/)、ハイフン(-)、コンマ(、)、ドット(。)、およびスペースのいずれかを区切り文字として受け入れます。

したがって、次の式はすべてTrueを返します。

IsDate(“ 5.1”)
IsDate(“ 30 6”)
IsDate(“ 30,6”)
IsDate(“ 1/2”)

しかし、この異常があります。次の式はTrueを返します。

IsDate(“ 5.1.5”)
IsDate(“ 5.1.05”)

ただし、不明確に、この式はFalseを返します。

IsDate(“ 5.1.2005”)

ユーザーが日付を入力するInputBoxを使用してユーザーフォームを作成したとします。IsDateを使用してエントリを検証することはあまり信頼できないことは明らかです。

IsDateが時間値もカバーしていることに気付くと、事態はさらに混乱します。(対応するIsTime関数はありません。)したがって、次の式はすべてTrueを返します。

IsDate(“ 4:45”)
IsDate(“ 4.45”)
IsDate(“ 4 45”)
IsDate(“ 4/45”)
IsDate(“ 23:59”)

これらの式はFalseを返します。

IsDate(“ 4:60”)
IsDate(“ 24.45”)

Range引数を渡すと、IsDateがこれらの癖のすべてを示すわけではないことを指摘することが重要です。例えば:

IsDate(Range(“ A1”))

IsDateは、日付または時刻を含むセルを識別するのに完全に信頼できるようです。たとえば、日付として5.1を含むセルは識別されません。文字列を日付として解釈できるかどうかをコードで判断する必要がある場合、最善の解決策は、その文字列をセルに配置してから、セルの内容を確認するコードを記述することです。


SharePointOnlineドキュメントセットを使用してコンテンツを管理する

SharePointOnlineドキュメントセットを使用してコンテンツを管理する

Microsoft Office365製品スイートの1つであるSharePointOnlineでは、ドキュメントセットを使用すると、効率的にプロジェクトごとにドキュメントをグループ化し、管理できます。

SharePointでタグ付けする方法

SharePointでタグ付けする方法

SharePointでのタグ付けは、コンテンツの可視性と検索性を向上させるための重要な手法です。

Excelのソルバーエラーメッセージはどういう意味ですか?

Excelのソルバーエラーメッセージはどういう意味ですか?

Excelのソルバーが表示するエラーメッセージの意味を理解し、最適な解決策を見つける方法について詳しく解説します。

Excelの[ソルバーオプション]ダイアログボックスで[GRG非線形]タブを使用する方法

Excelの[ソルバーオプション]ダイアログボックスで[GRG非線形]タブを使用する方法

Excelの[GRG非線形]タブには、GRG非線形解法を使用しているときにソルバーが機能する方法を管理するためのボタンとボックスがあります。オプションを利用し、最適な解決策を得るためのステップを解説します。

SharePointをPowerBIと統合する方法

SharePointをPowerBIと統合する方法

SharePointをPower BIと統合する方法と、レポートをSharePointサイトに接続する方法をLuckyTemplates.comから学びます。

SharePointサイトを共有およびフォローする方法

SharePointサイトを共有およびフォローする方法

個人やグループがコミュニケーション、コラボレーション、共有、接続できるSharePointソーシャルネットワーキングツールの使用方法を学びます。

SharePoint列のデータ入力を検証する

SharePoint列のデータ入力を検証する

SharePoint列のデータ入力を検証する方法を学び、データの整合性を確保するための実践的なソリューションを提供します。

スマートシート 9.1.1

スマートシート 9.1.1

Smartsheet は、プロジェクトの管理、ワークフローの構築、チームとの共同作業を可能にする動的な作業プラットフォームです。

共有ポイント

共有ポイント

SharePoint は、さまざまなワークフロー アプリケーション、「リスト」データベース、その他の Web コンポーネント、およびビジネス グループの共同作業を制御するためのセキュリティ機能を使用する Web ベースのコラボレーション システムです。

パーペチュアルカレンダー 1.0.38/1.0.36

パーペチュアルカレンダー 1.0.38/1.0.36

Van Nien Calendar は、携帯電話でカレンダーを表示するアプリケーションです。携帯電話で太陰太陽の日付をすぐに確認できるため、重要な仕事を計画することができます。