excel - 在 Excel 中映射替换字符串

标签 excel excel-2007 excel-formula

我有一个包含 2 列的 excel 表:绝对路径和相对路径。
现在说数据格式如下:

 absolute path           relative path
 -------------           -------------
 /a/b/c/d/abc.dat                
 /x/y/z/def.dat
 /p/q/r/s/t/test.dat
 /a/b/c/d/abc.dat                
 /x/y/z/def.dat

输出应该是
 absolute path           relative path
 -------------           -------------
 /a/b/c/d/abc.dat        ABCD_PATH       
 /x/y/z/def.dat          XYZ_PATH   
 /p/q/r/s/t/test.dat     PQRST_PATH
 /a/b/c/d/abc.dat        ABCD_PATH       
 /x/y/z/def.dat          XYZ_PATH
  • 如果第一列包含 /a/b/c/d ,然后在第二列中应该放置一些我在这里给出的唯一字符串 ABCD_PATH .
  • 如果第一列包含 /x/y/z/ ,然后在第二列中应该放置一些我在这里给出的唯一字符串 XYZ_PATH .
  • 如果第一列包含 /p/q/r/s/t/ ,然后在第二列中应该放置一些我在这里给出的唯一字符串 PQRST_PATH .
  • 最佳答案

  • 在 Excel 文件的工作表中创建映射表(例如 sheet2):
     ______________________________________
    |   |    A       |      B
    |___|____________|_____________________
    | 1 | Absolute   |   ReplaceBy
    |   |------------|---------------------
    | 2 |/a/b/c/d/   |   ABCD_PATH
    | 3 |/x/y/z/     |   XYZ_PATH
    | 4 |/p/q/r/s/t/ |   PQRST_PATH
    |
    |_________          ___________________
    \ sheet1 /\ sheet2 /\ sheet3 /
     \______/  \______/  \______/
    
  • 返回表 1:
     ___________________________________________________
    |   |    A               |      B
    |___|____________________|__________________________
    | 1 | absolute path      |   relative path
    |   |--------------------|--------------------------
    | 2 |/a/b/c/d/abc.dat    |   =VLOOKUP(LEFT(A2...    --(hit)-> Ctrl+Shift+Enter
    | 3 |/x/y/z/def.dat      |           |
    | 4 |/p/q/r/s/t/test.dat |           V (copy cell)
    |
    |         __________________________________________
    \ sheet1 /\ sheet2 /\ sheet3 /
     \______/  \______/  \______/
    
  • 放入relative path B2单元格这个公式:
    =VLOOKUP(LEFT(A2,
                  MAX((MID(A2, ROW($1:$90), 1)="/")*ROW($1:$90))
                 ),
             Sheet2!$A$2:$B$4,
             2,
             FALSE)
    
  • 点击 Ctrl+Shift+Enter :这是一个数组公式,也称为 CSE formula .
  • 复制 B2单元格(不是公式)并将其粘贴到列 B 中的剩余单元格中.
  • 关于excel - 在 Excel 中映射替换字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6281448/

    相关文章:

    c# - vsto Range.Find on empty single cell selection 返回单元格外的范围

    excel - 范围不会更改多个单元格

    Excel图表动态范围选择

    excel - 将范围总和粘贴到另一个单元格

    excel - 数据验证以根据过滤器限制可能的单元格值

    excel - IsNumeric 在 excel/vba 中针对不同的区域设置给出了意想不到的结果

    excel - 在 Excel 中生成随机单词列表,但没有重复

    c# - 上传Excel文件并提取数据-asp.net mvc 3

    excel - 提取给定数组的值

    excel - 连接日期和小数时间,格式为 mm/dd/yyyy hh :mm format