VBAの勉強 ある範囲の中から値を探す
本日のVBAの勉強は、ある範囲から値を探し出す方法です。
エクセルの関数ならVLOOKUPがありますが、
VBAではFindというものがあります。
早速、答えから
Sub 値を見つける()
Dim foundCell As Range
Dim box1 As Long
' box1に3に入れ込む
box1 = 3
' box1と同じ値をM列から探しfoundCellに入れ込む。
Set foundCell = Range("M1:M" & Rows.Count).Find(What:=box1, LookAt:=xlWhole)
'foundCellの右隣にHereと表示する。
foundCell.Offset(0, 1).Value = "Here"
If Not foundCell Is Nothing Then
MsgBox "見つかりました。 "
Else
MsgBox "一致するデータが見つかりませんでした。"
End If
End Sub
値一つ探すのにVBAでは上のように表現するんですね。
「目で探した方が早いよ」と昔は感じていましたが、大量情報処理の場合は
必須になります。
それを教えてくれないから、若い時(10代)のプログラミング学習がつまらなくて
挫折?したような気がします。
本日もお疲れさまでした。
今日のメモ
マイクロソフトは上がりました。
エヌビディアも上がっています。
円安落ち着き?151円代まで戻ってます。
今後どうなるでしょうか。上がっていきそうな感じですね。
マイクロソフト
株価 406.66ドル/株(アメリカ5/3 16時00分時点 終値)
前日終値 397.84ドル/株(アメリカ5/2 16時00分時点 終値)
OVER累計 1371
UNDER累計 1954
買い優勢で、なんだか数量が落ち着いています。
エヌビディア
株価 887.89ドル/株(アメリカ5/3 16時00分時点 終値)
前日終値 858.17ドル/株(アメリカ5/2 16時00分時点 終値)
OVER累計 1793
UNDER類家 5209
買い優勢です。まだまだ上がりそうですね。