
セルを結合しているセルに、値が入っていて、
その値を検索して列番号を取得したいのですが
エラーになります。
A1セルとA2セルを結合して、
「a」をいれて
Sub test()
MsgBox Cells.Find(What:="a", LookAt:=xlWhole).Column
MsgBox Rows("1:2").Find(What:="a", LookAt:=xlWhole).Column
End Sub
をしても、どちらもエラーになります。
実行時エラー91「オブジェクト変数またはWithブロック変数が設定されていません」
というエラーです。
でもB1に「a」を入れれば、問題なく2が返されます。
結合されててもセルを検索する方法を教えてください。

No.2ベストアンサー
- 回答日時:
今まで結合セルと設けたシートで検索を使ってきて問題がなかったのですが、お示しの例でやってみると確かにエラーになり、悩んでしまいました。
結論としては、結合セルの先頭セル以外のセルを起点に検索をかけようとすると、エラーになる様です。
当方の用いているワークシートでは先頭セルは結合してありませんので、問題なかったのですね。ご参考まで。
Sub test()
'a1:a2結合
Dim c As Range
'afterを指定しないと、expression(Cellsなので、A1セル)の左上セルを指定したことになる
Set c = Cells.Find(what:="a", lookat:=xlWhole)
If c Is Nothing Then Debug.Print "Test1 みつかりません"
Set c = Cells.Find(what:="a", after:=Range("A1"), lookat:=xlWhole)
If c Is Nothing Then Debug.Print "Test2 みつかりません"
Set c = Cells.Find(what:="a", after:=Range("A2"), lookat:=xlWhole)
If c Is Nothing Then Debug.Print "Test3 みつかりません"
End Sub
'結果
'Test1 みつかりません
'test2 みつかりません
Sub test2()
'a2:a3結合
Dim c As Range
Set c = Cells.Find(what:="a", lookat:=xlWhole)
If c Is Nothing Then Debug.Print "Test1 みつかりません"
Set c = Cells.Find(what:="a", after:=Range("A1"), lookat:=xlWhole)
If c Is Nothing Then Debug.Print "Test2 みつかりません"
Set c = Cells.Find(what:="a", after:=Range("A2"), lookat:=xlWhole)
If c Is Nothing Then Debug.Print "Test3 みつかりません"
End Sub
'結果
'Test3 みつかりません
No.3
- 回答日時:
#2です。
推敲不足で申し訳ありません。下記が正しいです。'afterを指定しないと、expressionの左上セル(ここでは対象がCellsなので、A1セル)を指定したことになる
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelでSUBTOTAL関数を設定した...
-
EXCELで、結合されたセルに連続...
-
エクセルでチェックボックスを...
-
エクセル ボタンを押すとセルの...
-
VBAで結合したセルがクリアでき...
-
Excel 離れたセルへの連続デー...
-
セルを結合した場合の関数(COU...
-
エクセルでセルをクリックして“...
-
EXCEL VLOOKUP的コメント自動表示
-
Excelでnullになるような式のセ...
-
EXCEL セル結合したセルを参照...
-
エクセルで片方のセルに入力し...
-
Excelのカウントアップボタンに...
-
「数式は隣接したセルを使用し...
-
EXCELで○ヶ月を○年○ヶ月に変換...
-
Excelで同じセルに箇条書きをし...
-
A1セルに入力したら、入力時間...
-
Excelの入力規則で2列表示したい
-
お肉の下のシートを煮込んでし...
-
複数の文字列のいずれかが含ま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelでSUBTOTAL関数を設定した...
-
EXCELで、結合されたセルに連続...
-
エクセルでチェックボックスを...
-
エクセル ボタンを押すとセルの...
-
セルを結合した場合の関数(COU...
-
エクセルで片方のセルに入力し...
-
VBAで結合したセルがクリアでき...
-
Excel 離れたセルへの連続デー...
-
エクセルでたくさんのセルを小...
-
セルの値を取得してSQL文に組み...
-
Excel セルを結合したものを抽...
-
エクセル 結合セル内に空白なら...
-
エクセルでセルをクリックして“...
-
「数式は隣接したセルを使用し...
-
EXCEL VBAでたくさんのURLの一...
-
エクセルで作業した日の日付を残す
-
VBAで困っています。
-
結合セルのデータ消去でエラー...
-
【EXCEL】条件に合致するセルの...
-
セルの結合
おすすめ情報