[[20220616160855]] 『全シートを検索』(ふわ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『全シートを検索』(ふわ)

お願いします。

シート「マスタ」のB列の4行目から部品名が記載されています。

この部品名が他の全シートにあるかないか確認したいです。

他のシートもB列4行目からデータがあります。

部品名があればmsgboxを表示できるようにできますか?

ネットで検索して見つけたのですがこの場合はターゲーットが

1つしかないのでどう手を加えてよいのかわかりません。

お願いします。

'変数の宣言を必須
Option Explicit

Sub Sample()

    Const TARGET_SHEET_NAME As String = "サンプルシート"
    Const TARGET_COLUMN As Integer = 2
    Const START_ROW As Integer = 3

    Dim endRow As Double
    Dim arrayData As Variant
    Dim data As Variant
    Dim dicDate As Object

    '最終行を取得
    endRow = Cells(START_ROW, TARGET_COLUMN).End(xlDown).Row

    '1列分のデータを取得
    With Worksheets(TARGET_SHEET_NAME)
        arrayData = Range(.Cells(START_ROW, TARGET_COLUMN), _
                         .Cells(endRow, TARGET_COLUMN))
    End With

    'DictionaryのKeyに設定。Valueには空文字を設定
    Set dicDate = CreateObject("Scripting.Dictionary")
    For Each data In arrayData
        If Not dicDate.Exists(data) Then
            dicDate.Add data, ""
        End If
    Next

    '特定の値の存在確認
    If dicDate.Exists("0000006") Then
        MsgBox "0000006が存在しました"
    End If
End Sub

< 使用 Excel:unknown、使用 OS:Windows10 >


Ctrl+F 検索場所 ブックで検索してみては。
理解出来ないVBAを使うより、よっぽど有意義では。
(tkit) 2022/06/16(木) 16:50

Excelに備わった機能を使うことで十分対応できます。
・検索場所を「ブック」にして
・「すべて検索」をクリックして実行
これがベストでしょう。
結果が一覧で表示され、クリックでワークシートの該当セルにジャンプできます。

(γ) 2022/06/16(木) 16:56


すいません。

VBAで完結しました。ありがとうございました。
(ふわ) 2022/06/20(月) 15:51


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.