• 追杀国民党升级 蔡英文喜不自胜"这一刻终于来了" 2018-08-19
  • 近4000款网游遭公安查处 代表委员呼吁分级势在必行 2018-08-19
  • 怒江傈僳族自治州发放中职教育农村学生生活补助近838万元 2018-08-19
  • 公共场所禁烟第一案今开庭 2018-08-18
  • 《妈妈咪鸭》创海外预售纪录 2018-08-18
  • 涉警无小事勿轻言放过 2018-08-18
  • “功夫仓鼠”恶斗 尘土飞扬似动作大片 2018-08-17
  • 自主品牌传祺GS4拿下J.D power五冠 2018-08-17
  • 将个性发挥到极致 实拍甲壳虫乐动橙版 2018-08-17
  • 青岛市委常委会召开扩大会议 2018-08-17
  • 爱尔兰艺术瑰宝《大河之舞》将在广州收官 2018-08-16
  • 渝中书记黄玉林:认真抓好安全稳定各项工作 2018-08-15
  • 沈阳市经贸代表团出访德国瑞典取得丰硕成果 2018-08-15
  • 普洱:野象进村民家吃粮食搞破坏 2018-08-15
  • 市委常委会召开扩大会议 传达贯彻党的十九届三中全会精神陈敏尔主持并讲话 2018-08-15
  • VBA判断单元格内容格式、颜色、合并单元格及返回数值

    时间:2016-03-05   作者:snow   来源:互联网

    一、判断数值的格式

    '1 判断是否为空单元格

      Sub d1()

         [b1] = ""

         'If Range("a1") = "" Then

         'If Len([a1]) = 0 Then

         If VBA.IsEmpty([a1]) Then

            [b1] = "空值"

          End If

      End Sub

    '2 判断是否为数字

      Sub d2()

        [b2] = ""

        'If VBA.IsNumeric([a2]) And [a2] <> "" Then

        'If Application.WorksheetFunction.IsNumber([a2]) Then

          [b2] = "数字"

        End If

      End Sub

    '3 判断是否为文本

      Sub d3()

        [b3] = ""

        'If Application.WorksheetFunction.IsText([A3]) Then

         If VBA.TypeName([a3].Value) = "String" Then

           [b3] = "文本"

        End If

      End Sub

    '4 判断是否为汉字

       Sub d4()

          [b4] = ""

          If [a4] > "z" Then

            [b4] = "汉字"

          End If

       End Sub

    '5 判断错误值

    Sub d10()

        [b5] = ""

        'If VBA.IsError([a5]) Then

        If Application.WorksheetFunction.IsError([a5]) Then

           [b5] = "错误值"

        End If

    End Sub

      Sub d11()

        [b6] = ""

        If VBA.IsDate([a6]) Then

           [b6] = "日期"

        End If

    End Sub

    二、设置单元格自定义格式

     Sub d30()

          Range("d1:d8").NumberFormatLocal = "0.00"

     End Sub

    三、按指定格式从单元格返回数值

    'Format函数语法(和工作表数Text用法基本一致)

    'Format(数值,自定义格式代码)

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    'Excel中的颜色可以用两种方式获取,一种是EXCEL内置颜色,另一种是利用QBCOLOR函数返回

    Sub y1()

     Dim x As Integer

      Range("a1:b60").Clear

      For x = 1 To 56

        Range("a" & x) = x

        Range("b" & x).Font.ColorIndex = 3

      Next x

    End Sub

     Sub y2()

      Dim x As Integer

       For x = 0 To 15

        Range("d" & x + 1) = x

        Range("e" & x + 1).Interior.Color = QBColor(x)

       Next x

     End Sub

    Sub y3()

      Dim 红 As Integer, 绿 As Integer, 蓝 As Integer

      红 = 255

      绿 = 123

      蓝 = 100

      Range("g1").Interior.Color = RGB(红, 绿, 蓝)

    End Sub

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    '单元格合并

    Sub h1()

      Range("g1:h3").Merge

    End Sub

    '合并区域的返回信息

    Sub h2()

     Range("e1") = Range("b3").MergeArea.Address '返回单元格所在     的合并单元格区域

    End Sub

    '判断是否含合并单元格

    Sub h3()

     'MsgBox Range("b2").MergeCells

     ' MsgBox Range("A1:D7").MergeCells

      Range("e2") = IsNull(Range("a1:d7").MergeCells)

      Range("e3") = IsNull(Range("a9:d72").MergeCells)

    End Sub

     '合并H列相同单元格

       Sub h4()

        Dim x As Integer

        Dim rg As Range

        Set rg = Range("h1")

         Application.DisplayAlerts = False

        For x = 1 To 13

          If Range("h" & x + 1) = Range("h" & x) Then

            Set rg = Union(rg, Range("h" & x + 1))

          Else

             rg.Merge

            Set rg = Range("h" & x + 1)

          End If

        Next x

        Application.DisplayAlerts = True

       End Sub

    tag : 合并   颜色
    相关文章
    发表评论