ITPub博客

首页 > 大数据 > Hadoop > Excel单元格数据特殊处理实例

Excel单元格数据特殊处理实例

Hadoop 作者:blueheartasdf 时间:2011-04-06 12:24:00 0 删除 编辑
有朋友要求Excel工作表的A1单元格和B1单元格中有两个数字,这两个数字有一部分相同,现在要找出其中相同的数字并写入单元格C1,找出A1中有而B1中没有的数字并写入单元格D1,找出B1中有而A1中没有的数字并写入单元格E1。  

步骤/方法

  1. 1
    如下面的工作表图片:
      
  2. 2
    我不知道给出的数字是否都是按这样的规律,即第一个原始数据的后面几位数与第二个原始数据的前面几位数相同。如果是这个规律的话,则可以就这个具体的例子给出下面的代码来实现:  
      Sub SeparateNumber()
       Dim strFirst As String
       Dim strResult As String
       Dim StartNum As Integer
       Dim EndNum As String
       Dim i As Integer, j As Integer
       strFirst = Left(Range(”B1″), 1)
       StartNum = InStr(1, Range(”A1″), strFirst)
       j = 1
       For i = StartNum To Len(Range(”A1″))
       EndNum = Mid(Range(”A1″), i, 1)
       If EndNum = Left(Range(”B1″), j) Then
       j = j + 1
       End If
       Next i
       If j > 1 Then
       strResult = Mid(Range(”A1″), StartNum, i - 1)
       End If
       ‘单元格C1中的数据
       Range(”C1″).Value = strResult
       ‘单元格D1中的数据
       Range(”D1″).Value = Left(Range(”A1″), StartNum - 1)
       ‘单元格E1中的数据
       Range(”E1″).Value = Right(Range(”B1″), Len(Range(”B1″)) - j)
      End Sub  
      代码很简单,只是运用了几个VBA函数。  
  3. 3
    其实代码可以进一步简化,因为VBA还有一个数组函数(Split函数)。 如果要将其变为通用的,则可将上述代码转化为自定义函数,并用相对量代替代码中的硬编码。 两个单元格中的数字如果不是按上面提到的规律,则可能两个单元格中的数字中间部分相同,而其它部分不同;或者一个单元格中的数字结尾部分和另一个单元格中的数字的中间部分相同;等等。
    END

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21838668/viewspace-1111123/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-06-07