Note: The other languages of the website are Google-translated. Back to English
ログイン  \/ 
x
or
x
今すぐ登録  \/ 
x

or

別のワークブックで値を検索/検索する方法は?

この記事では、別のブックから値を検索してデータを返す方法と、別のブックから値を検索/検索する方法について説明します。 ここでは、XNUMXつのソリューションを詳しく紹介します。


Excelの別のブックからのVlookupデータと戻り値

たとえば、Excelで果物購入テーブルを作成している場合、次のスクリーンショットに示すように、別のワークブックから果物をvlookupして、対応する価格を返す必要があります。 ここでは、ExcelのVLOOKKUP関数を使用して解決する方法を説明します。

1.値をvlookupするワークブックと戻り値の両方を開きます。

2.価格を返す空白のセルを選択し、数式を入力します = VLOOKUP(B2、[Price.xlsx] Sheet1!$ A $ 1:$ B $ 24,2、FALSE) その中に、必要に応じてこの数式を範囲に適用するための塗りつぶしハンドルをドラッグします。

ノート:
(1)上記の式で、B2は別のブックから検索するフルーツ、Price.xlsxはルックアップするブックのファイル名、Sheet1はルックアップするシート名、A $ 1です。 :$ B $ 24は、検索する範囲です。 必要に応じて変更できます。
(2)検索したブックを閉じると、数式は自動的に次のように更新されます。 = VLOOKUP(B2、 'W:\ test \ [Price.xlsx] Sheet1'!$ A $ 1:$ B $ 24,2、FALSE)、W:\ test \は、検索したブックの保存パスです。

これまでのところ、左のスクリーンショットに示すように、すべての価格が正しく返されています。 また、これらの価格は、元のワークブックを変更した場合に自動的に更新されます。

ノートリボン 数式は複雑すぎて覚えられませんか? 数式を定型句として保存して、後でワンクリックで再利用できるようにします。
続きを読む...     無料体験

VBAを使用した別の閉じたブックからのVlookupデータと戻り値

VLOOKUP関数で保存パス、ファイル名、およびワークシートを構成するのはごちゃごちゃしているかもしれません。 この方法では、VBAを導入して簡単に解決できます。

1。 プレス 他の + F11 キーを押して、Microsoft Visual Basic forApplicationsウィンドウを開きます。

2。 クリック インセット > モジュール、次にVBAコードの下をモジュールの開始ウィンドウに貼り付けます。

VBA:別の閉じたブックからのVlookupデータと戻り値

Private Function GetColumn(Num As Integer) As String
If Num <= 26 Then
GetColumn = Chr(Num + 64)
Else
GetColumn = Chr((Num - 1) \ 26 + 64) & Chr((Num - 1) Mod 26 + 65)
End If
End Function
Sub FindValue()
Dim xAddress As String
Dim xString As String
Dim xFileName As Variant
Dim xUserRange As Range
Dim xRg As Range
Dim xFCell As Range
Dim xSourceSh As Worksheet
Dim xSourceWb As Workbook
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xUserRange = Application.InputBox("Lookup values :", "Kutools for Excel", xAddress, Type:=8)
If Err <> 0 Then Exit Sub
Set xUserRange = Application.Intersect(xUserRange, Application.ActiveSheet.UsedRange)
xFileName = Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", 1, "Select a Workbook")
If xFileName = False Then Exit Sub
Application.ScreenUpdating = False
Set xSourceWb = Workbooks.Open(xFileName)
Set xSourceSh = xSourceWb.Worksheets.Item(1)
xString = "='" & xSourceWb.Path & Application.PathSeparator & _
"[" & xSourceWb.Name & "]" & xSourceSh.Name & "'!$"
For Each xRg In xUserRange
Set xFCell = xSourceSh.Cells.Find(xRg.Value, , xlValues, xlWhole, , , False)
If Not (xFCell Is Nothing) Then
xRg.Offset(0, 2).Formula = xString & GetColumn(xFCell.Column + 1) & "$" & xFCell.Row
End If
Next
xSourceWb.Close False
Application.ScreenUpdating = True
End Sub
注意:このVBAは、選択した列から2列遅れた列に値を返します。 たとえば、このVBAを適用するときに列Bを選択すると、値は列Dに返されます。宛先列を変更する必要がある場合は、コードを確認してください。 xRg.Offset(0、2).Formula = xString&GetColumn(xFCell.Column + 1)& "$"&xFCell.Row 、および置換 2 必要に応じて他の番号に。

3。 プレス F5 キーを押すか、 ラン このVBAを実行するためのボタン。

4.開始ダイアログボックスで、検索するデータ範囲を指定して、[ OK ボタン。

5.ここで、[ブックの選択]ダイアログボックスを開いて値を検索するブックを選択し、[ブックの選択]をクリックしてください。 開いた ボタン。

これで、選択したすべての値が指定された閉じたブックで検索され、対応する値が指定された列に返されます。 スクリーンショットを参照してください:


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300以上の強力な機能。 Office / Excel2007-2019および365をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 全機能30日間の無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性が50%向上し、毎日何百ものマウスクリックが減ります。
officetab下部
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    leigh_87 · 2 years ago
    Hi this works great thanks! Would it be at all possible to show me how i would change the code if i have the workbook open that i would like to lookup the data in?