我必须通过从其他两个CSV
中提取数据来构建CSV首先,将它们链接在一起的列如下所示:
CSV 1
Column A | Column B | Column C
Honda | I_1999 | Red
Honda | I_1999 | Blue
Honda | I_1999 | Green
Toyota| I_1998 | Yellow
CSV 2
Column A | Column B | Column C
Honda | 1999.xml | Coupe
Honda | 1999.xml | Sedan
Toyota| 1998.xml | Coupe
Toyota| 1998.xml | Sedan
有没有办法vlookup部分字符串?在" I _"之后说vlookup字符串在CSV 1中,B列之前的字符串为#34; .xml" CSV 2 B列。
其次,如何将引用的数据一旦链接起来就将它们放在1个文件中?
我希望新的CSV最终看起来像这样:
Column A | Column B | Column D | Column E
Honda | I_1999 | Red | Coupe
Honda | I_1999 | Red | Sedan
Honda | I_1999 | Blue | Coupe
Honda | I_1999 | Blue | Sedan
答案 0 :(得分:0)
要使用VLOOKUP,我们需要一些独特的东西,但根据您的详细信息,您可以使用以下数组公式。
=IF($A$1:$A$5=$F$1:$F$5,INDEX($F$1:$H$5,MATCH(RIGHT(B2,4),LEFT($G$1:$G$5),0),"")
按 CTRL + Shift + Enter
在上面的快照中,您可以在D2单元格中看到结果而不是" Sedan" "双门轿跑车"因为它是相同标准的重复匹配(在VLOOKUP中也存在)。您可以添加一个唯一ID,然后尝试获得确切结果:)
答案 1 :(得分:0)
您实际上应该能够使用ADO创建两个数据表并使用SQL来执行您想要的操作。
假设你有第一个数据在范围内:Sheet1!A1:C3和范围sheet1中的第二个数据!E1:G5。每个数据列都有一个A,B,C等标题。
以下查询将根据您的需要加入。
SELECT Data.A AS [Column A],
Data.B AS [Column B],
Data.C AS [Column C],
Data1.C AS [Column D]
FROM [Sheet1$A1:C3] Data
INNER JOIN [Sheet1$E1:G5] Data1
ON Data.A = Data1.A
将copyfromrecordset用于其他范围以粘贴结果数据。