2017-10-23 7 views
0

あるワークシート "データ"のODBCデータベースから情報を引き出し、別のワークシート "価格ブックデータ"でINDEX MATCHを使用してデータをプルしようとしています。データ接続ワークシートに数字を入力すると、私が作成したINDEX MATCHの式は機能しませんが、データ接続ワークシートからMatchを試行しているセルを切り取って貼り付けると、式が正しく機能します。インデックス接続がデータベース接続で機能しない

非データ接続ワークシートのセルをテキストと数値の両方に再フォーマットしようとしましたが、どちらも正常に一致しませんでした。 VBAでvartypeをテストし、非データ接続型vartypeが「5」(「倍精度浮動小数点数」)を返し、データ接続ワークシートが「8」(「String」 - 両方のセルがUPC)。私の推測では、INDEX MATCHはその不一致のために動作していないのですが、非データ接続セルを数値とテキストの両方に変更しています。どちらも進まず、処理方法もわかりません。

また、vba以外のセルの書式設定があり、両方のセルが "G"( "一般"書式設定)と一致していることを確認しました。

INDEX MATCHが機能するように非データ接続セルを適切に再フォーマットするにはどうすればよいですか。

+0

おかげで、ian0411を、第一(及び第二のラッピングこの配列数式を(数式バー内で一緒にCtrl + Shift + Enterをクリック)してみてください)パラメータはVALUE()で動作しませんでした。提案していただきありがとうございます。私はインデックスの値をラップしても、それはうまくいきませんでした。 – user4333011

+0

Excelは、一致する式が除外されているため、正確な式にエラーを投げた可能性があります。これはあなたのコメントを実装する方法です:= INDEX(データ!B2:B3、MATCH(VALUE(値段データ '!A2)、VALUE(データ!A2:A3)、0)) – user4333011

+0

もう一度、Ian。私は米国にいる。私はテストした。それがエラーになりました。マークアップの意味は?私が尋ねる理由は、1つのタブがデータベース接続として設定されているためです。ちなみに、データベース接続(値のみ)のデータをカットして新しいタブに貼り付け、「テキストとして保存された番号」に貼り付けようとしている番号が表示されています。セルに移動してEnterキーを押すと、再フォーマットされ、INDEX MATCHステートメントが機能します。 「データ」タブを調整したくないのですが、「価格表」タブのセルをテキストとして保存されている数値とどのように調和させることができますか? – user4333011

答えて

1

データをExcelにコピーすると、数値がテキストとして扱われることがあります。そのため、テキストを数値に変換するためにVALUE()構文を使用しています。これは、以下のPICのようになります

=INDEX(Data!B:B,MATCH('Price Book Data'!A2,VALUE(Data!A:A),0))

+0

もう一度、良い調査とスーパーsleuthingありがとう! – user4333011

+0

あなたは大歓迎です。うれしい私は助けることができた。 – ian0411

関連する問題