ここから本文です

EXCEL マクロについて質問です。 『あるセル範囲の中で、特定の値を含むセルが一...

cmk********さん

2013/8/1801:31:14

EXCEL マクロについて質問です。
『あるセル範囲の中で、特定の値を含むセルが一つでもあれば、Aを実行する。なければ、Bを実行する。』
という事をしたいのですが、どのように書けば宜しいでしょうか。

例:B1:C4 のセル範囲の中に、"品川"を含むセルが一つでもあれば、A1セルをアクティブにする。なければ、A2をアクティブにする。

閲覧数:
2,343
回答数:
3
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

rot********さん

2013/8/1802:17:38

Dim FoundCell As Range
Set FoundCell = Range("B1:C4").Find(What:="品川")
If FoundCell Is Nothing Then
Range("A2").Activate
Else
Range("A1").Activate
End If

あたりでどうでしょ。

質問した人からのコメント

2013/8/18 23:00:03

rot0425さん ,ja7awuさん ,train_benoistさん ありがとうございました。
今回はrot0425さんをBAにさせて頂きましたが、何れの回答も大変参考になりました。

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

プロフィール画像

カテゴリマスター

tra********さん

2013/8/1805:01:02

普通にCOUNTIFで数を数えれば良いのでは?

Sub sample1()
Dim Town As String
Town = "品川"
If Application.CountIf(Range("B1:C4"), "=*" & Town & "*") <> 0 Then
Range("A1").Activate
Else
Range("A2").Activate
End If
End Sub

とか

Sub sample2()
Dim Town As String
Const 条件 As String = "=*#*"
Town = "品川"
If Application.CountIf(Range("B1:C4"), Replace(条件, "#", Town)) <> 0 Then
Range("A1").Activate
Else
Range("A2").Activate
End If
End Sub

とかみたいに。

ja7********さん

2013/8/1801:52:46

こんな感じで如何でしょうか。

Sub Test()
Dim FRng As Range
Set FRng = Range("B1:C4").Find("品川", Lookat:=xlPart)
If Not FRng Is Nothing Then
    Range("A1").Activate
Else
    Range("A2").Activate
End If
Set FRng = Nothing
End Sub

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる