No.5ベストアンサー
- 回答日時:
私も作ってみました。
検索範囲はシート全体にしてあります。検索文字はInputBoxを使って入力します。
Findを使って、検索文字があるだけMsgBoxで出力します。
ご参考に。
Sub searchCharacter()
Dim schArea As Range '検索する範囲
Dim myTarget As String '検索文字
Dim fndCell As Range '見つけたセル
Dim firstAdr As String '最初に見つけたセル
Dim schCot As Integer '見つけた個数
'検索文字の入力
myTarget = Application.InputBox("検索する文字列を入力します", "検索", Type:=2)
If myTarget = "False" Then Exit Sub
'1回目の検索実行
Set schArea = ActiveSheet.UsedRange '検索する範囲(この場合はシート全部)
Set fndCell = schArea.Find(what:=myTarget) '検索
If fndCell Is Nothing Then
MsgBox "検索文字:" & myTarget & " は見つかりませんでした。"
Exit Sub
End If
firstAdr = fndCell.Address '1回目の検索結果のアドレス
'2回目以降の検索実行
Do
If MsgBox("検索文字:" & myTarget & " は" _
& fndCell.Row & "行目" & fndCell.Column & "列目" & "にあります。", _
vbOKCancel, "結果") = vbCancel Then
Exit Sub
End If
schCot = schCot + 1
Set fndCell = schArea.FindNext(after:=fndCell) '次を検索
Loop While fndCell.Address <> firstAdr And Not fndCell Is Nothing
MsgBox "検索文字:" & myTarget & " は " & schCot & "個見つかりました。"
End Sub
No.4
- 回答日時:
こんにちは
ワークシート関数でしたら、
=MATCH("バナナ",A:A,0)
マクロでしたら、
Sub test()
Dim Answer As Variant
On Error GoTo errHandler
Answer = Application.WorksheetFunction.Match("バナナ", Columns(1), 0)
MsgBox Answer, , "検索結果"
Exit Sub
errHandler:
MsgBox "検索値が見つかりません"
End Sub
でいかがでしょうか?
参考URL:http://www2.odn.ne.jp/excel/
No.3
- 回答日時:
おとと;
先ほどの当方の回答、一部不足;
> rngWk = Range("F1") '<=MATCHを使用するためのセル
↑
Set rngWk = Range("F1")
~~~
ですね
この方法を使うならMsgboxなどで検索結果を表示した後に
rngWk.Value = ""
で消してしまった方がカッコイイでしょう(^^)
No.2
- 回答日時:
ExcelのVBAからMATCHを使用する場合は
Dim rngWk as Range
rngWk = Range("F1") '<=MATCHを使用するためのセル
rngWk.FormulaR1C1 = "=MATCH(""バナナ"",R1:R5,0)"
Msgbox rngWk.value,,"検索結果"
といった感じで書きますね
セルを使いたくない場合は
dim Answer as Variant
Answer = Application.WorksheetFunction _
.Match("バナナ", Worksheets(1).Range("A1:A5"), 0)
Msgbox Answer,,"検索結果"
でAnswerに結果が返ります
*VBAのシート上でMATCHなどのワークシート関数を書いて[F1]を押すとhelpにコードの書き方が出ますよ
なおMATCHで戻ってくる数字は「行番号」ではなく、「"A1:A5"で指定された中の何番目であるか」なので
データを"A5:A10"に入れている場合には戻ってきた数字に[+4]などしてあげましょう♪
No.1
- 回答日時:
=MATCH("みかん",A1:A5,0) -> 2
=MATCH("バナナ",A1:A5,0) -> 3
というふうに結果が出るかと....
"みかん"とか"バナナ"をセル名にしてもいいでしょう...
お試しください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで2つの表を比較して、文字列が同じだが、その行のある値が違うものを抽出したい 1 2022/10/06 21:48
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- Excel(エクセル) Excel_マクロ_複数のシートのVLOOKUPで表示された#N/A以外に色付けをしたいです 1 2023/02/16 22:37
- Excel(エクセル) Excel リンク先のエクセルファイルの削除 同時に行を削除したい 1 2022/11/29 16:20
- Visual Basic(VBA) エクセルVBAで『A列』に新規で数値を入力し『B列』から右方向の空白セルにその値を貼り付ける方法 4 2022/11/05 08:37
- Visual Basic(VBA) vbaマクロについて 【1.csv】をもとに【商品.csv】に有るものを【有り.csv】として名前を 1 2023/05/18 07:58
- Visual Basic(VBA) vbaマクロについて 次のようなマクロを組みたいです。 自分は初心者なので全くわかりません。 詳しく 8 2023/05/18 18:38
- Visual Basic(VBA) VBAで大量データの処理 3 2022/11/15 21:53
- Excel(エクセル) GASで重複データの件数ではなく、何番目かを求める方法について 2 2022/12/10 14:56
- Visual Basic(VBA) VBA 検索と入力 Excel ブック ぶぶぶ シート ししし 列V 検索対象の列です 最終行は、お 6 2023/05/17 01:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[Ctrl]+FをVBAで表現
-
iPhoneの電話帳で登録している...
-
写真の服探してますどうやって...
-
Bingの「話題の検索ワード」を...
-
ACCESS VBA Filterに配列を使い...
-
Windows7 フォルダー内検索につ...
-
Word、特定の文字を網掛けにす...
-
フォルダー内のファイル検索が...
-
検索キーワードが二重に表示さ...
-
アポストロフィを含むと、検索...
-
パソコン画面にたくさん開いて...
-
単純所持になりますか?
-
NOTESのフォント設定
-
英字の筆記体をエクセル等で表...
-
エクセルのプルダウン三角マー...
-
受信トレイの広告を消す
-
ポップアップ広告を表示しなく...
-
IE と Edge の表示フォントを同...
-
yutura,net について
-
グーグル先生
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[Ctrl]+FをVBAで表現
-
検索キーワードが二重に表示さ...
-
viで連続で検索したい時
-
メール内 本文の検索を行いた...
-
Excelで、テキストボックスに書...
-
Bingの「話題の検索ワード」を...
-
Word、特定の文字を網掛けにす...
-
エクセルの検索機能でコピーペ...
-
ACCESS VBA Filterに配列を使い...
-
Excelで連続検索のショートカッ...
-
教えてgooで質問者の名前で検索...
-
SSS4の乱数で6Vを検索す...
-
エクセルで検索結果を抽出し、...
-
「大舎制」ってなんて読むんで...
-
【WordXP】網掛け文字の検索
-
IMEの学習機能を削除するにはど...
-
DROPBOXで、ファイルを検索する...
-
クリックする四角が変な文字に
-
Windows7 フォルダー内検索につ...
-
検索エンジンで個人情報入力は...
おすすめ情報