我在excel中的句子开头搜索单个字符。例如,假设单元格 A1 包含字符串“T code999” A2 包含“WWW T 8” A3 包含“TW”
当我搜索字符串“T”(T后跟空格)时,结果应该只显示单元格A1(字符串以T开头,后面有一个空格)有没有办法像这样在excel中搜索?
在列中查找单元格的最直接方法是在列A上设置过滤器。
选择列中的任何数据单元格A,然后从功能区单击Sort & Filter/ Filter。(如果您在单元格中有标题标签,则效果最佳A1。)
单击单元格中的下拉菜单A1并选择Text Filter/ Begins With。

在光标所在的位置输入“T *”(顶部,右侧输入框),然后按 OK。
然后只需使用彩色填充、粗体或您选择的任何内容突出显示过滤后的行。


这里的关键是添加星号,通配符匹配任何系列的字符,到“开始于”过滤字符串。如果您尝试仅使用“T”进行过滤,Excel 会将其截断为“T”,您将获得所有以 T 开头的单元格。
请注意,过滤器不区分大小写。如果需要,则必须按照此处所述设置高级过滤器。
我知道Excel的Find不支持Regex,否则我建议你使用find on ^T(T后面有一个空格,在发布时会被忽略......)。
但是,我认为您可以通过使用条件格式来实现类似的效果:
单击单元格 A1 并选择整个工作表 ( Ctrl+ A),或者单击单元格 A,然后单击列和行标签的交集以选择所有内容。
选择条件格式,然后选择新建规则。
选择“使用公式确定要设置格式的单元格”,然后在输入框中“格式化此公式为真的值”,插入:
=LEFT(A1,2)="T "
Run Code Online (Sandbox Code Playgroud)
LEFT()n返回单元格开头的第一个字符。在这里,我已经使用了n=2.
单击“格式...”按钮并选择格式。我喜欢使用“填充”并选择黄色,但这取决于你。单击“确定”,然后再次单击“确定”。这应该会突出显示您正在寻找的单元格。
根据附加要求
我不确定您到底期望什么,但由于您想要所有行,所以我会这样做:
在新列中,假设为“Z”,用唯一的分隔符连接所有单元格。我认为这^是这个函数的一个可能的分隔符。^如果您的数据中没有任何地方,它将起作用。例如,在第 2 行中,您可以:
=A2&"^"&B2&"^"&C2&"^"&D2&"^"&E2&"^"&F2...X2&"^"&Y2
Run Code Online (Sandbox Code Playgroud)
这将创建一个长字符串。
在下一栏中,使用:
=IF(OR(LEFT(Z2,2)="T ",NOT(ISERROR(FIND("^T ",Z2)))),1,0)
Run Code Online (Sandbox Code Playgroud)
这将给出1包含包含“T”的单元格的所有行。
放置一个过滤器,然后过滤所有1以获取您需要的行。
Barry Houdini 指出(不要为这部分投票给我),这更容易/更简单/更短:
在新列中,假设“Z”,输入以下公式并将其向下拖动:
=COUNTIF(A2:Y2, "T *")
Run Code Online (Sandbox Code Playgroud)在Z列上放一个过滤器,过滤掉所有带有 的0。
突出显示您需要的行。