在数学表达式或者一些物理量纲中,我们经常需要使用到上标,如下图1所示。
图1
在我们设置或者取消上标时,都需要先选取要设置上标的字符,调出“设置单元格格式”对话框,在“字体”选项卡中选取或取消“上标”复选框前的勾选,如下图2所示。
图2
如果要处理的单元格区域中含有大量带有上标的文本,我们要一个个手动操作删除或取消上标,会非常繁琐。幸好有VBA,能够帮助我们自动快速地完成任务。
代码1:快速删除所选单元格中的上标字符
‘删除所选单元格区域中所有上标
Sub DeleteSuperScript()
Dim rng As Range
Dim i As Long
‘确保选择的是单元格区域
If TypeName(Selection) <>”Range” Then Exit Sub
‘关闭屏幕刷新
Application.ScreenUpdating = False
‘遍历所选单元格
For Each rng In Selection.Cells
‘遍历单元格中的每个字符
For i = 1 To Len(rng.Value)
‘判断是否为上标
If rng.Characters(i,1).Font.Superscript = True Then
‘删除
rng.Characters(i, 1).Delete
i = i – 1
End If
Next i
Next rng
‘恢复屏幕刷新
vba栈结构应用基础示例
栈有很多用处,比如你要进行了一系列的操作,然后要以相反的顺序取消这些操作。栈也是实现很多经典算法的数据结构。下面,举两个基础的示例,进一步认识栈。 示例1:将十进制数转换成二进制 下面的代码将十进制数转换成相应的二进制数: Dim stkTest As New Stack '数制转换代码 Sub conver
Application.ScreenUpdating = True
End Sub
广告算法图解
作者:【美】巴尔加瓦(Aditya Bhargava)
当当
代码2:快速取消所选单元格中的字符上标格式
‘取消所选单元格中所有上标
Sub RemoveSuperScript()
Dim rng As Range
Dim i As Long
‘确保选择的是单元格区域
If TypeName(Selection) <>”Range” Then Exit Sub
‘关闭屏幕刷新
Application.ScreenUpdating = False
‘遍历所选单元格
For Each rng In Selection.Cells
‘遍历单元格中的每个字符
For i = 1 To Len(rng.Value)
‘判断是否为上标
If rng.Characters(i, 1).Font.Superscript =True Then
‘取消上标格式
rng.Characters(i,1).Font.Superscript = False
End If
Next i
Next rng
‘恢复屏幕刷新
Application.ScreenUpdating = True
End Sub
excel实战技巧:模拟占位输出
在C语言中,经典的函数printf用来格式化输出内容,在格式字符串中包含了要原样输出的字符和占位符,占位符一般由%和指定转换格式组成,例如: printf(“i = %d, j = %d”, 1, 2) 输出: i = 1, j = 2 在Python中,可以使用“{}”来占位,并在右侧指定相应的值,例如: