我很擅长在一个工作表中从ODBC数据库中提取信息" Data"并且我试图在另一个工作表" Price Book Data"上使用INDEX MATCH从中提取数据。当我在非数据连接工作表中键入数字时,我所做的INDEX MATCH公式不起作用,但是如果我从数据连接工作表中剪切并粘贴我试图匹配的确切单元格,则公式正常工作。
我尝试将非数据连接工作表中的单元格重新格式化为文本和数字,但两者都没有成功匹配。我用vba测试了vartype,而非数据连接的vartype正在返回" 5" ("双精度浮点数")和数据连接工作表正在返回" 8" ("字符串" - 两个单元格都是UPC)。我的猜测是INDEX MATCH由于这种差异而无法正常工作,但我将非数据连接单元格更改为数字和文本,并且都没有工作,也不知道如何继续。
我还获得了非vba单元格格式,并确保两个单元格匹配" G" ("一般"格式化),即便如此,它仍然无法正常工作。
问题是,如何正确地重新格式化非数据连接单元格以使INDEX MATCH有效?
答案 0 :(得分:0)
将数据复制到Excel时,有时会将数字视为文本,这就是我使用VALUE()
语法将文本转换为数字的原因。试试这个数组公式(在公式栏中单击Ctrl + Shift + Enter
):
=INDEX(Data!B:B,MATCH('Price Book Data'!A2,VALUE(Data!A:A),0))
这应该如下图所示: