本文作者:office教程网

Excel实战技巧:动态的笑脸图

office教程网 2023-08-07 11:11:38
后台-系统设置-扩展变量-手机广告位-内容正文顶部
摘要:

无意中看到的一个技巧,非常有意思,稍作整理和修改,在这里和大家分享。

如下图1所示,在工作表中绘制了一个笑脸图,根据单元格H3中的数值来变换嘴唇的弧度。数值在0至50之间,是哭脸,超过50后就是笑脸了。

图1

在单元格H3中,设置了数据有效性,只能在该单元格中输入0至100之间的整数,如下图2所示。

图2

在笑脸所在的工作表模块中,输入代码:

Private Sub Worksheet_Change(ByVal Target As Range)

On Error GoTo errHandler

Dim sh As Shape

Dim myMin As Double

Dim myMax As Double

Set sh = Shapes(“HappyFace”)

‘Excel 2003中,min=0.7181 max=0.8111

‘Excel 2007后,min=-0.04653 max0.04653

myMin = -0.04653

myMax = 0.04653

If Target.Address = “$H$3″ Then

Application.EnableEvents = False

sh.Adjustments.Item(1) _

= myMin (myMax – myMin) * Target.Value/ 100

End If

exitHandler:

Application.EnableEvents = True

Exit Sub

errHandler:

MsgBox Err.Number & ” ” &Err.Description

GoTo exitHandler

End Sub

这里,添加了一段简单的代码,让单元格H3中的数字连续改变,从而实现笑脸不断变化,如下图3所示。

图3

下面,我们让笑脸随着分数的变化,颜色也同时发生变化,如下图4所示。

图4

相应的工作表模块代码如下:

Private Sub Worksheet_Change(ByVal Target As Range)

如何使用VBA操控Excel界面

如何使用VBA操控Excel界面?本文讲解操控工作表中一些界面元素的VBA代码。 工作表中的行列 隐藏和取消隐藏行标题 不能够分别单独隐藏行标题和列标题,只能同时隐藏或者显示这两个标题。 示例代码: '隐藏和取消隐藏活动窗口中活动工作表的行标题和列标题 '隐藏标题 ActiveWindow.D

On Error GoTo errHandler

Dim sh As Shape

Dim myMin As Double

Dim myMax As Double

Dim myColor As Long

Set sh = Shapes(“HappyFace”)

‘Excel 2003中, min=0.7181 max=0.8111

‘Excel 2007后, min=-0.04653 max=0.04653

myMin = -0.04653

myMax = 0.04653

If Target.Address = “$H$3″ Then

Application.EnableEvents = False

sh.Adjustments.Item(1) _

= myMin (myMax – myMin) * Target.Value/ 100

‘修改形状颜色

‘小于60%  红色

‘60%- 90% 橙色

‘90%-100% 绿色

Select Case Target.Value

Case Is >= 90: myColor _

= RGB(146, 208, 80) ‘绿色

Case Is >= 60: myColor _

= RGB(255, 192, 0) ‘橙色

Case Else: myColor _

= RGB(255, 0, 0) ‘红色

End Select

sh.Fill.ForeColor.RGB = myColor

End If

exitHandler:

Application.EnableEvents = True

Exit Sub

errHandler:

MsgBox Err.Number & ” ” &Err.Description

GoTo exitHandler

End Sub

同样,我们也可以设置一段代码,让笑脸连续变化,如下图5所示。

图5

最全的Excel舍入、取整函数用法(共7大类)

提起excel数值取值,都会想起用INT函数。其实excel还有其他更多取整方式,根据不同的要求使用不同的函数。 一、INT取整 对于正数,截掉小数取整 =INT(12.6) 结果为 12 对于负数,截掉小数再 -1 取整。 =INT(-12.6) 结果为 -13 二、TRUNC取整 对于正数和负数,均为

后台-系统设置-扩展变量-手机广告位-内容正文底部
未经允许不得转载:

作者:office教程网,原文地址:Excel实战技巧:动态的笑脸图发布于2023-08-07 11:11:38
转载或复制请以超链接形式并注明出处 演示站

分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

留言与评论(共有 0 条评论)
   
验证码: