対象のセル・セル範囲に数式があるかどうか調べる(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」のセル範囲を選択)
関連記事
-
-
引数に指定したセル範囲の共通のセル範囲を取得(Intersect メソッド)
Intersect メソッド Intersect メソッドは、引数に指定したセル …
-
-
オートフィルタ(日付フィルタ)AutoFilter メソッド
日付フィルタを使用してレコードを抽出する Excel 2007 から「日付フィル …
-
-
セルを挿入する(Insert メソッド)
Insert メソッド Insert メソッドで、指定した場所に新規の空白セルを …
-
-
列幅を取得・設定・する(ColumnWidth プロパティ)
ColumnWidth プロパティ ColumnWidth プロパティは、対象セ …
-
-
セルの値を置換・書式設定(Replace メソッド,ReplaceFormat プロパティ)
セルの値の置換と書式設定 検索条件に一致するセルの書式を設定するには、まず、Ap …
-
-
セルの行番号または列番号を取得(Row プロパティ,Column プロパティ)
Row プロパティ・Column プロパティ Row プロパティは、指定したセル …
-
-
A1参照形式、R1C1参照形式の設定・取得(ReferenceStyle プロパティ)
ReferenceStyle プロパティ ReferenceStyle プロパテ …
-
-
テーマカラーで網かけ(パターン)の色の取得・設定(PatternThemeColor プロパティ・PatternTintAndShade プロパティ)
PatternThemeColor プロパティ・PatternTintAndSh …
-
-
次の検索(FindNext メソッド,FindPrevious メソッド)
FindNext メソッド Find メソッドで開始された検索を継続します。引数 …
-
-
セル・セル範囲を貼り付ける(Paste メソッド)
Paste メソッド Paste メソッドは、クリップボードの内容を指定したセル …