我有一个产品列表excel表单和类别列表excel表单。在Excel中高级查找和替换
在类别excel中有cat_id和cat_name one对应于另一个。
我需要对每个cat_id进行查找和替换,并用cat_name替换产品列表中的数字。
我如何在Excel中做到这一点?
我有一个产品列表excel表单和类别列表excel表单。在Excel中高级查找和替换
在类别excel中有cat_id和cat_name one对应于另一个。
我需要对每个cat_id进行查找和替换,并用cat_name替换产品列表中的数字。
我如何在Excel中做到这一点?
我不认为你可以用Excel公式一步完成你正在寻找的东西。但是,您可以使用以下方法。
我们假设产品列表被称为ProductList
,另一个称为CategoryList
。另外,假设工作表ProductList
上的cat_id
项目在列A
中,并且工作表CategoryList
上的cat_id
和cat_name
列在列A
和B
中。
首先,您必须确保表CategoryList
上的项目按照cat_id
的升序排序。然后,在上表ProductList
空栏的第一行的单元(让我们说是细胞Q1
),输入以下公式:
=LOOKUP($A1,CategoryList!A:A,CategoryList!B:B)
然后选择单元格Q1
并拖动右下角一路直到您的工作表中的数据结束。在此之后,Q
列将包含所需的值。
要真正取代了与在Q
列A
原始值,你需要复制整列Q
做“选择性粘贴”成列A
,在其中选择单选按钮“值”。之后,您可以删除临时列Q
。
如果你想成为关于cat_id
项目没有出现在片CategoryList
健壮,您可以添加一个检查,这使得公式如下(一行):
=IF($A1<>LOOKUP($A1,CategoryList!A:A,CategoryList!A:A),
"Not Found",LOOKUP($A1,CategoryList!A:A,CategoryList!B:B))
我正在尝试此答案。 – logan 2012-08-17 01:51:02
我得到它在一张纸上工作,当我拖动黑色方块,虽然它改变了所有的数字..我不得不定义单元格的长度,但它让它工作..即时通讯使用开放式办公室 = LOOKUP(A1,B1:B210,C1:C210) ,当我拖动它变成方形成 = LOOKUP(A2,B2:B211,C2:C2110),它提出了一个问题..我只需要a1来改变而不是其他的。 我怎样才能拖动广场,只有一个列增量? – logan 2012-08-17 02:31:14
如果你希望你的行号在拖动黑色方块的时候保持不变,那么你应该在你希望保持不变的数字之前加一个$符号,如= LOOKUP(A1,B $ 1:B $ 210,C $ 1:C $ 210)。 – 2012-08-17 05:56:56
PowerShell脚本扩展PSExcel有一些加入的功能:
PSExcel:https://github.com/RamblingCookieMonster/PSExcel
方法: Join-Worksheet -Path
我试过了搜索并取而代之。 另请参阅我的答案: Perform find & replace in excel doc in C#
您可以在产品列表中创建一个新列并使用VLOOKUP()从类别表中找到相应的cat_name。 – 2012-08-15 21:07:57
您必须使用'.Find'请参阅此链接http://stackoverflow.com/questions/11972850/item-not-found-in-find-vba – 2012-08-15 21:10:39