
EXCEL表格中怎么把同列中的某个或多个特殊字变更颜色或字体?如把这列中所有包含“家庭” 变红色呢?
EXCEL表格中怎么把在这一列中的某一个字或多个特殊(一样的)字变成其他颜色或者其他字体?如把这列中所有包含“家庭”两个字变成红色怎么操作呢?版本为EXCEL2007在“...
EXCEL表格中 怎么把在这一列中的某一个字或多个特殊(一样的)字变成其他颜色或者其他字体?如把这列中所有包含“家庭” 两个字变成红色怎么操作呢?
版本为EXCEL2007 在“条件格式”下的“文本包含”下处理后 整个这一行多有包含这个字的颜色全部都会相应的改变 但我目的是最终只需要整列的相同“字、词汇”颜色改变即可!求指教!我截图两张第二张是需要做成这样的样本 第一张是条件格式下没有成功的样本!
第一张
第二张
(需要做成第二张)请指教、谢谢! 展开
版本为EXCEL2007 在“条件格式”下的“文本包含”下处理后 整个这一行多有包含这个字的颜色全部都会相应的改变 但我目的是最终只需要整列的相同“字、词汇”颜色改变即可!求指教!我截图两张第二张是需要做成这样的样本 第一张是条件格式下没有成功的样本!
第一张
第二张
(需要做成第二张)请指教、谢谢! 展开
4个回答
展开全部
一列中指定的文字变色?是的话用VBA就可以,代码如下:
Sub 变色()
On Error Resume Next
Dim srng As Range
111
YorN1 = MsgBox("请确认您是否已选中需要变色的范围,当前所选中的范围是:" & Chr(10) & Selection.Address, vbYesNo)
If YorN1 = vbNo Then
YorN1_1 = MsgBox("是否请重新选取范围?", vbYesNo)
If YorN1_1 = vbNo Then
MsgBox ("程序即将结束")
Exit Sub
Else
Set srng = Application.InputBox("请选择需要变色的区域范围", "范围选择", Selection.Address(0, 0), , , , , 8)
If srng Is Nothing Then
Else
srng.Select
End If
GoTo 111
End If
End If
222
CColor = InputBox("输入需要变色的文本", "输入内容")
YorN2 = MsgBox("您需要变色的文本是:" & Chr(10) & CColor, vbYesNo)
If YorN2 = vbNo Then
YorN2_1 = MsgBox("是否重新输入需要变色的文本", vbYesNo)
If YorN2_1 = vbNo Then
MsgBox ("程序即将结束")
Exit Sub
Else
GoTo 222
End If
End If
If CColor = "" Then
YorN3 = MsgBox("未指定需要变色的文本,是否重新指定?", vbYesNo)
If YorN3 = vbNo Then
MsgBox ("程序即将结束")
Exit Sub
Else
GoTo 222
End If
End If
333
vbcolor = InputBox("请指定变换的颜色(输入代码即可,默认红色):" & Chr(10) & "0(黑色)" & Chr(10) & "1(红色)" & Chr(10) & "2(绿色)" _
& Chr(10) & "3(黄色)" & Chr(10) & "4(蓝色)" & Chr(10) & "5(品红)" & Chr(10) & "6(青色、蓝绿色)" & Chr(10) & "7(白色)", "指定颜色", 1)
If vbcolor = "" Then
YorN3 = MsgBox("未指定变换的颜色,是否重新指定?", vbYesNo)
If YorN3 = vbNo Then
MsgBox ("程序即将结束")
Exit Sub
Else
GoTo 333
End If
ElseIf IsNumeric(vbcolor) = False Or CDbl(vbcolor) > 7 Or CDbl(vbcolor) < 0 Or Int(vbcolor) <> CDbl(vbcolor) Then
YorN3_1 = MsgBox("指定的颜色代码有误(请输入0-7的整数)是否重新指定?", vbYesNo)
If YorN3_1 = vbNo Then
MsgBox ("程序即将结束")
Exit Sub
Else
GoTo 333
End If
End If
arrcolor = Array(vbBlack, vbRed, vbGreen, vbYellow, vbBlue, vbMagenta, vbCyan, vbWhite)
For Each Rng In Selection
T = InStr(Rng.Value, CColor)
If T = 0 Then
Else
Rng.Characters(Start:=T, Length:=Len(CColor)).Font.Color = arrcolor(vbcolor)
End If
Next Rng
End Sub
这个先选中相应的范围,然后运行名字为“变色”的宏即可。附件中的文件是写好宏的,供参考(注:这个我之前写的一个,所以里边有两个宏,你选好范围后运行那个名字为“变色”的宏即可,运行时可能需要修改宏安全性,具体方法百度一下excel宏安全性修改即可)
追问
所用的是excel2007 条件格式后所有的包含字的这一行全是红色全都会变颜色,但只需要个别词汇变颜色
追答
附件中就是写好宏的文件,可以实现指定的文字变色并可以选择变的颜色,如有问题可可以加企鹅,710903007加的时候注明下即可
展开全部
附件 为选中 即变色, 宏触发事件
'Excel 内右键点 工作表 标签, 查看代码,如下代码复制进去,开启宏即可
Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range, i As Integer
For Each rng In Selection
i = 1
Do While InStr(i, rng, "家庭") > 0
rng.Characters(InStr(i, rng, "家庭"), 2).Font.ColorIndex = 3
i = InStr(i, rng, "家庭") + 2
Loop
Next
End Sub
追问
所用的是excel2007 条件格式后所有的包含字的这一行全是红色全都会变颜色,但只需要个别词汇变颜色
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
条件格式,选择包含文本,输入 家庭, 选择 红色即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询