神奇的条件格式,也许是个BUG

2024-03-12 08:18
文章标签 条件 格式 bug 神奇 也许

本文主要是介绍神奇的条件格式,也许是个BUG,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

工作中有如图所示数据,设置了简单的条件格式,如果单元格中包含Excel,那么该单元格字体为红色,如下图所示。

在这里插入图片描述

现在希望突出显示关键字Excel,将其字体颜色设置为绿色。手工操作并复杂,按F2键,单元格进入编辑状态,选中关键字,然后设置字体颜色,易如反掌,如下图所示。
在这里插入图片描述

如果有大量的数据需要进行这个操作,那么就太耗费时间了,为啥不用VBA来实现,这个代码想必也不会太复杂。

示例代码如下。

Sub Demo1()strKey = "Excel"For Each Rng In [a1].CurrentRegioniLoc = InStr(Rng.Value, strKey)If iLoc > 0 ThenRng.Characters(Start:=iLoc, Length:=Len(strKey)).Font.Color = vbGreenEnd IfNext
End Sub

【代码解析】
第3行代码循环遍历单元格。
第4行代码查找关键字位置。
第6行代码设置关键字字体颜色为绿色。

运行代码,A1单元格就像中了邪,没有任何反应,理想很丰满现实很骨干。
在这里插入图片描述

经过反复尝试,发现只要关键字在单元格的起始位置,那么这个代码就无法改变关键字的字体颜色,只能认为这是Excel的一个BUG。

既然找到了规律,那么可以用变通的方式来实现。

Sub Demo2()strKey = "Excel"For Each Rng In [a1].CurrentRegionRng.Value = Chr(32) & Rng.ValueiLoc = InStr(Rng.Value, strKey)If iLoc > 0 ThenRng.Characters(Start:=1, Length:=0).Font.ColorIndex = xlAutomaticRng.Characters(Start:=iLoc, Length:=Len(strKey)).Font.Color = vbGreenEnd IfNext
End Sub

【代码解析】
第4行代码在单元格中增加一个前导空格。
第7行代码看似无用,但是没有此行代码,A1单元格仍然无法实现关键字变色的效果。

运行代码,如下图所示,虽然不完美,但是基本上实现要求。
在这里插入图片描述

在试图恢复单元格内容时,发现了一个有趣的现象。

Sub RemoveSpace()For Each Rng In [a1].CurrentRegionRng.Value = Trim(Rng)Next
End Sub

代码非常简单,就是移除单元格中的前导空格,但是关键字高亮的效果也就跟随消失。

在这里插入图片描述


如果大家也遇到类似的问题,那么拿去用吧,不要问为什么,我也不知道 😛
如果某位高手知道其中的原因,烦请在评论区留言赐教,拜谢!

这篇关于神奇的条件格式,也许是个BUG的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/800651

相关文章

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤

如何自定义Nginx JSON日志格式配置

《如何自定义NginxJSON日志格式配置》Nginx作为最流行的Web服务器之一,其灵活的日志配置能力允许我们根据需求定制日志格式,本文将详细介绍如何配置Nginx以JSON格式记录访问日志,这种... 目录前言为什么选择jsON格式日志?配置步骤详解1. 安装Nginx服务2. 自定义JSON日志格式各

python dict转换成json格式的实现

《pythondict转换成json格式的实现》本文主要介绍了pythondict转换成json格式的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下... 一开始你变成字典格式data = [ { 'a' : 1, 'b' : 2, 'c编程' : 3,

Python中Windows和macOS文件路径格式不一致的解决方法

《Python中Windows和macOS文件路径格式不一致的解决方法》在Python中,Windows和macOS的文件路径字符串格式不一致主要体现在路径分隔符上,这种差异可能导致跨平台代码在处理文... 目录方法 1:使用 os.path 模块方法 2:使用 pathlib 模块(推荐)方法 3:统一使

Java中使用注解校验手机号格式的详细指南

《Java中使用注解校验手机号格式的详细指南》在现代的Web应用开发中,数据校验是一个非常重要的环节,本文将详细介绍如何在Java中使用注解对手机号格式进行校验,感兴趣的小伙伴可以了解下... 目录1. 引言2. 数据校验的重要性3. Java中的数据校验框架4. 使用注解校验手机号格式4.1 @NotBl

Python批量调整Word文档中的字体、段落间距及格式

《Python批量调整Word文档中的字体、段落间距及格式》这篇文章主要为大家详细介绍了如何使用Python的docx库来批量处理Word文档,包括设置首行缩进、字体、字号、行间距、段落对齐方式等,需... 目录关键代码一级标题设置  正文设置完整代码运行结果最近关于批处理格式的问题我查了很多资料,但是都没

基于Python开发PDF转Doc格式小程序

《基于Python开发PDF转Doc格式小程序》这篇文章主要为大家详细介绍了如何基于Python开发PDF转Doc格式小程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用python实现PDF转Doc格式小程序以下是一个使用Python实现PDF转DOC格式的GUI程序,采用T

Nginx中location实现多条件匹配的方法详解

《Nginx中location实现多条件匹配的方法详解》在Nginx中,location指令用于匹配请求的URI,虽然location本身是基于单一匹配规则的,但可以通过多种方式实现多个条件的匹配逻辑... 目录1. 概述2. 实现多条件匹配的方式2.1 使用多个 location 块2.2 使用正则表达式

前端bug调试的方法技巧及常见错误

《前端bug调试的方法技巧及常见错误》:本文主要介绍编程中常见的报错和Bug,以及调试的重要性,调试的基本流程是通过缩小范围来定位问题,并给出了推测法、删除代码法、console调试和debugg... 目录调试基本流程调试方法排查bug的两大技巧如何看控制台报错前端常见错误取值调用报错资源引入错误解析错误

Python如何实现读取csv文件时忽略文件的编码格式

《Python如何实现读取csv文件时忽略文件的编码格式》我们再日常读取csv文件的时候经常会发现csv文件的格式有多种,所以这篇文章为大家介绍了Python如何实现读取csv文件时忽略文件的编码格式... 目录1、背景介绍2、库的安装3、核心代码4、完整代码1、背景介绍我们再日常读取csv文件的时候经常