2 / クリップ 0, 【募集】 前提・実現したいこと現在、VBAであるデータベースから検索した値を表示させる検索ツールを作っています。WorksheetFunctionでINDEXとMATCHを使って、ある文字列を別シートで検索後、別の列の指定のセル値(文字列)を返すようなコードを作っています。散々試行錯誤した結果、以 1 / クリップ With データシート 等として、「データシート」を省略する等すると見やすくなります。, 2018/04/17 14:43 編集, On Error Resume Next  投稿 2018/04/10 16:00 ここではindex関数+match関数を使って「別シートや別ファイル(ブック)からデータを抜き出す方法」を解説します。 一見難しそうに感じますが、エクセルでは一定の操作で自動的にシート名やファイル名を入力してくれる機能がありますので、やり方さえ分かれば簡単です。 ・編集 2018/04/10 16:25, 現在、VBAであるデータベースから検索した値を表示させる検索ツールを作っています。 「データシート.Range(」と記載した方が無難です。, Application.WorksheetFunction.Index(データシート.Cells(j, 27), Application.WorksheetFunction.Match(検索シート.Cells(i, 7), Range(データシート.Cells(2, 2), データシート.Cells(5670, 2)), 0)), こういう風に何回もシートオブジェクトが出てくると見にくいので、 3 / クリップ 0, 回答 On Error GoTo 0, Excelファイル間のデータ転記(転記元ファイルの表の行数がファイルによって異なる), ワークシート関数(INDEX関数とMATCH関数)を使用して、任意の値を抽出したい, 回答 【「index関数とmatch関数を組み合わせると便利!」という話を時々聞くけど、いったいどういう事?】という疑問に答えます。この記事がご好評いただいたことをきっかけに、動画による説明も登場しました!【動画でわかる・説明編】vlookupの限界!match関数+index関数はなぜ便利? 散々試行錯誤した結果、以下のエラーメッセージが出てしまいました。, teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。, 評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。, 上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。, 下記の「Range」にシートが付いてないのが原因の可能性があります。 WorksheetFunctionでINDEXとMATCHを使って、ある文字列を別シートで検索後、別の列の指定のセル値(文字列)を返すようなコードを作っています。 0, 回答 № 概略説明; ① 「売上明細」シートから「売上集計①」シートに 1 万件の列単位にデータを転記しています。 コピー、貼り付けではなく「転記先範囲の値」=「転記元範囲の値」の 1 行で転記できます。 3 回に分けているのは列の位置関係が一致していないからです。 皆さんは、VBAでセル範囲を検索する方法を知っていますか? セル範囲を検索する方法の一つに、MATCH関数があります。VBAでワークシート関数を使えば、ExcelのMATCH関数をVBAで使うことができるので、Excelで使ったことがある方にもおすすめです! そこで今回は、 MATCH関数を使う … 検索シート.Cells(i, 9).Value = Application.WorksheetFunction.Index(データシート.Cells(j, 27).... teratailを一緒に作りたいエンジニア, Screenupdate や Calculation とか、基本的な事はご自分で調べてくださいね。, シート上のデータに重複がない場合、当該列をインデックス、別の列の値(文字列)をキーとする連想配列を用いれば、高速に処理できる可能性があります。, ご教示誠に有り難うございます。On Error Resume Nextを入れてみました。.