Excel VBA批量添加(清除)绿色小三角

2022-10-31 15:39:58 浏览数 (2)

【问题】

大家在工作中是否遇到此情况

导入数据时:要求要“文本”单元格格式计算数据时:要求要“数值”单元格格式

  1. 导入数据时:要求要“文本”单元格格式
  2. 计算数据时:要求要“数值”单元格格式

===1情况实例===

公积金系统或其他系统中要导入数据时会弹出:电话号码位数不合要求

问题所在是:Excel表格的数据要求要文本数据,也是就要有如下图的形式

这是文本的数据格式

但在实际工作中如果用“单元格格式--文本”又是不行的,

就是要有“绿色小三角”出现时才符合要求

===2情况实例===

所以要求我们要把“文本”转化为“数值”,也就是“清除绿色小三角”

【解决方法】

【手工操作】数据---》分列--》下一步。。。--》文本--》完成

【VBA代码】

基于上面的情况,所以有以下两个代码,供碰到此情况的人共同学习之用

代码语言:javascript复制
Sub 批量添加绿色小三角()
    On Error Resume Next
    Dim myCell As Range
    Set myCell = Application.InputBox(prompt:="Select a cell", Type:=8)
    myCell.TextToColumns FieldInfo:=Array(1, 2)
    If Err.Number > 0 Then
        MsgBox Err.Description
        '        On Error GoTo 0
        Exit Sub
    End If
End Sub
代码语言:javascript复制
Sub 清除绿色小三角_文本数据转化为数值()
    On Error Resume Next
    Dim myCell As Range
    Set myCell = Application.InputBox(prompt:="Select a cell", Type:=8)
    If Err.Number > 0 Then
        MsgBox Err.Description
'        On Error GoTo 0
        Exit Sub
    End If
    For Each r In myCell
        If r.Value <> "" And IsNumeric(r.Value) Then r.Value = Val(r.Value)
    Next
End Sub

学习时也在VSTO上进行练习,成功了

给共同工作与学习的朋友们学习,

如感觉可以,请复制使用、并转发,请更多人学会。

0 人点赞