アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBAで悩んでおります わかる方教えていただけませんか?

セルL2で入力したワードをセルB列で検索を行い一致したら対象から右4つ目のセルを抽出しセルO2に抽出するプログラムを組みたい

対象を検出するプログラムは組めたのですがここからどうすればいいのかわかりません

sub 検索()
dim 管理No As string
管理No=Range("B:B").Find(what:=Range("L2").
value,LookAt:=xlwhole).selct
end sub
ご教授おねがいします

質問者からの補足コメント

  • HAPPY

    回答ありがとうございました 無事プログラム動きました ありがとうございます 
    あと 追加の質問なのですがこれを別々のワークシートで同じことをやろうとする場合どういう風にプログラムを組んだらよろしいでしょうか
    具体的に
    ワークシートBのL2に入力したワードをワークシートAのB列を検索し見つかったら対象の右から4こめを抽出してワークシートBのO2に出力する 
    追加でご質問して申し訳ないですがお分かりでしたら教えてください

      補足日時:2017/06/08 14:31

A 回答 (2件)

一例になればよいのですが。



Sub 検索()
Dim 管理No As Range
Set 管理No = Range("B:B").Find(what:=Range("L2").Value, LookAt:=xlWhole)

If Not 管理No Is Nothing Then ' 見つかった時

' 見つかったセルの同じ行(0)の右に4つ目(4)の値をO2に
Range("O2").Value = 管理No.Offset(0, 4).Value

' 不要なら下の2行は消して下さいな
Else '見つかなかった時
Range("O2").Value = "" '空白を入れる

End If

Set 管理No = Nothing '解放
End Sub
    • good
    • 0

補足に対する回答:



その場合はRangeがどのシートであるのかを明確にすれば可能でしょう。

Sub 検索_2()

Dim ws1 As Worksheet ' ☆追加
Dim ws2 As Worksheet ' ☆追加

Dim 管理No As Range

Set ws1 = Worksheets("Sheet1") '★追加 検索対象シート
Set ws2 = Worksheets("Sheet2") '★追加 抽出先シート

Set 管理No = ws1.Range("B:B").Find(what:=ws2.Range("L2").Value, LookAt:=xlWhole)

If Not 管理No Is Nothing Then ' 見つかった時

' 見つかったセルの同じ行(0)の右に4つ目(4)の値をO2に
ws2.Range("O2").Value = 管理No.Offset(0, 4).Value

' 不要なら下の2行は消して下さいな
Else '見つかなかった時
ws2.Range("O2").Value = "" '空白を入れる

End If

Set ws1 = Nothing ' ☆追加
Set ws2 = Nothing ' ☆追加
Set 管理No = Nothing '解放
End Sub

実際のシート名はお手元のBookに合わせて修正して下さい。
    • good
    • 0
この回答へのお礼

助かりました

無事プログラム動きました 助かりましたありがとうございます。

お礼日時:2017/06/09 11:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!