対象のセル・セル範囲に数式があるかどうか調べる(HasFormula プロパティ)
HasFormula プロパティ
HasFormula プロパティは、対象のセル・セル範囲すべてに数式が入力されている場合は、True を返し、セル・セル範囲すべてに数式が入力されていない場合は、False を返します。対象のセル範囲の一部分にのみ数式が入力されている場合は、Null 値 を返します。
result = Object.HasFormula
引数・戻り値
- object ・・・ 対象となる Range オブジェクト
- result ・・・ True(数式が入力されている場合)。False(数式が入力されていない場合)。Null 値(一部に数式が入力されているなどそれ以外の場合)。
セルに数式を入力するには Formula プロパティ や FormulaR1C1 プロパティ を使用します。
HasFormula プロパティの使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
Sub Sample_HasFormula() Dim myRng 'インプットボックスメソッドで、セル範囲を指定 Set myRng = Application.InputBox( _ Prompt:="セル範囲を指定してください", _ Title:="数式が入力されているかをチェック", _ Type:=8 _ ) '選択範囲全てに数式が入力されている場合は「True」、全てに数式が入力されていない場合は「False」 'それ以外の場合は「Null 値」と表示します If IsNull(myRng.HasFormula) Then MsgBox "Null 値" Else MsgBox myRng.HasFormula End If End Sub |
サンプルVBAソース実行前
(※「E3」「E4」「E5」セルには数式 [数量×単価] が入力されている)
実行(その1)
(※ 「E3」セルを選択)
実行(その2)
(※ 「C3」から「D5」のセル範囲を選択)
実行(その3)
(※ 「B2」から「E5」のセル範囲を選択)
関連記事
-
-
セルの位置を取得(Left プロパティ、Top プロパティ)
Left プロパティ・Top プロパティ Left プロパティは、「A列」の左端 …
-
-
フリガナの設定(Characters プロパティ,PhoneticCharacters メソッド)
Characters プロパティ Characters プロパティは、文字範囲を …
-
-
セル幅・高さの既定値(StandardHeight プロパティ・StandardWidth プロパティ)
StandardHeight プロパティ・StandardWidth プロパティ …
-
-
セルの値を置換・書式設定(Replace メソッド,ReplaceFormat プロパティ)
セルの値の置換と書式設定 検索条件に一致するセルの書式を設定するには、まず、Ap …
-
-
セル・セル範囲を切り取る(Cut メソッド)
Cut メソッド Cut メソッドは、指定したセル範囲を切り取り、引数に指定した …
-
-
グラデーション(Pattern プロパティ・Gradient プロパティ)
セルの背景ににグラデーションを設定する Pattern プロパティを使用するとセ …
-
-
セルの特定の要素のみをペーストする(PasteSpecial メソッド)
PasteSpecial メソッド PasteSpecial メソッドは、Cop …
-
-
重複するデータを削除(RemoveDuplicates メソッド)
RemoveDuplicates メソッド 指定したセル範囲から重複データを含む …
-
-
現在選択されているセルを参照(RangeSelection プロパティ)
RangeSelection プロパティ 実際に何が選択されているかにかかわらず …
-
-
セルの値を置換(Replace メソッド)
Replace メソッド 任意のセル範囲内から特定の値を一括して置換します。Fi …






