- 締切済み
特定の文字を含むセルの下のセルの内容を表示したい
@talkと、@talk[HF]という文字を含むセルの、下のセルの内容だけを表示するにはどうしたらいいでしょうか。 関数でなくてもいいのですが、色々試してみましたがわかりませんでしたので、どなたかわかる方がいらっしゃいましたら教えてください。 どうぞよろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- watabe007
- ベストアンサー率62% (476/760)
>@talkと、@talk[HF]という文字を含むセルの @talk[HF]を見つければ@talkも含まれるのでは @talk[HF]を検索して結果をVBEのイミディエイトウィンドウに 書き出しました。 Sub Test() Dim c As Range For Each c In ActiveSheet.Cells.SpecialCells(xlCellTypeConstants) If c.Value Like "*@talk[[]HF[]]*" Then Debug.Print c.Offset(1).Address(0, 0) & ":" & c.Offset(1).Value End If Next End Sub
- HohoPapa
- ベストアンサー率65% (455/693)
>関数でなくてもいいのですが VBAを使った関数で良ければ Function GetOrgText( _ MyRange As Range, _ Text1 As String, _ text2 As String) As String Dim HitRange As Range GetOrgText = "" For Each HitRange In MyRange If ((InStr(HitRange.Value, Text1) > 0) And _ (InStr(HitRange.Value, text2) > 0)) Then GetOrgText = GetOrgText & HitRange.Offset(1, 0).Value End If Next End Function といった関数を添付画像のように使うことで実現できます。 関数の第一引数は、探すセル範囲 第二、第三引数は、検索する文字列です。 なお、複数ヒットした場合は それぞれを文字列加算しています。
- bunjii
- ベストアンサー率43% (3589/8249)
INDEX関数を使うとできます。 具体的な数式は模擬データの提示があれば検証してから提示できます。 勿論、INDEX関数の中でMATCH関数やROW関数も使いますので幾つかの関数を必要に応じて組み合わせます。
お礼
ありがとうございました!