Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4115 / 13644 ツリー ←次へ | 前へ→

【58337】cellの入力規則の検索 potemkin 08/10/20(月) 15:47 質問[未読]
【58338】Re:cellの入力規則の検索 こぎつね 08/10/20(月) 15:51 発言[未読]
【58339】Re:cellの入力規則の検索 potemkin 08/10/20(月) 16:02 質問[未読]
【58340】Re:cellの入力規則の検索 こぎつね 08/10/20(月) 17:03 発言[未読]
【58341】Re:cellの入力規則の検索 Abebobo 08/10/20(月) 17:12 発言[未読]
【58364】Re:cellの入力規則の検索 potemkin 08/10/21(火) 11:20 お礼[未読]

【58337】cellの入力規則の検索
質問  potemkin  - 08/10/20(月) 15:47 -

引用なし
パスワード
   こんにちは
よろしくお願いします。

題名のとおり、
入力規則でリストになっているところを
検索したいのですが、
リストの中身自体は下記のコードで検索はできました。

Range("C5").Validation.Formula1

しかし、入力規則が設定されていない項目に対して行うと
以下のエラーとなります。

エラー1004
アプリケーション定義またはオブジェクト定義のエラーです。

Formula1自体がないようでエラーになるようですが、
エラーの回避方法がわかりません。

よろしければご教授よろしくお願い致します。

【58338】Re:cellの入力規則の検索
発言  こぎつね  - 08/10/20(月) 15:51 -

引用なし
パスワード
   ▼potemkin さん:
>こんにちは
>よろしくお願いします。
>
>題名のとおり、
>入力規則でリストになっているところを
>検索したいのですが、
>リストの中身自体は下記のコードで検索はできました。
>
>Range("C5").Validation.Formula1
>
>しかし、入力規則が設定されていない項目に対して行うと
>以下のエラーとなります。
>
>エラー1004
>アプリケーション定義またはオブジェクト定義のエラーです。
>
>Formula1自体がないようでエラーになるようですが、
>エラーの回避方法がわかりません。
>
>よろしければご教授よろしくお願い致します。

ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060113/227261/
とか。

【58339】Re:cellの入力規則の検索
質問  potemkin  - 08/10/20(月) 16:02 -

引用なし
パスワード
   >
>ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060113/227261/
>とか。

この方法ははじめに思いつきはしたのですが、
これでは異なる理由でエラーになったときに
うまくキャッチすることができないように思います。

入力規則が設定されていない場合のみ、
エラーがスルーするようには
やはり難しいのでしょうか。

【58340】Re:cellの入力規則の検索
発言  こぎつね  - 08/10/20(月) 17:03 -

引用なし
パスワード
   ▼potemkin さん:
>>
>>ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060113/227261/
>>とか。
>
>この方法ははじめに思いつきはしたのですが、
>これでは異なる理由でエラーになったときに
>うまくキャッチすることができないように思います。
>
>入力規則が設定されていない場合のみ、
>エラーがスルーするようには
>やはり難しいのでしょうか。

>Range("C5").Validation.Formula1
ここでエラーが起きるとまずいのでしょうから、この1行を

On Error Resume Next
Range("C5").Validation.Formula1
On Error GoTo 0
と挟んであげればいいのでは。
それ以外についてはコードが不明なのでなんですけど。

【58341】Re:cellの入力規則の検索
発言  Abebobo  - 08/10/20(月) 17:12 -

引用なし
パスワード
   potemkin さん こぎつね さん こんにちは

いっそのこと
  For Each a In ActiveCell.SpecialCells(xlCellTypeAllValidation)
   Debug.Print a.Address
  Next
入力規則の設定されているセルのみで作業する手も有りますよね。

【58364】Re:cellの入力規則の検索
お礼  potemkin  - 08/10/21(火) 11:20 -

引用なし
パスワード
   Abebobo さん こぎつねさん 
回答ありがとうございます。


>  For Each a In ActiveCell.SpecialCells(xlCellTypeAllValidation)
>   Debug.Print a.Address
>  Next
>入力規則の設定されているセルのみで作業する手も有りますよね。

うまくいきました!
しかも最初は全セル検索しようとしていたので
性能も大分よくなりました。
ありがとうございます。

4115 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free