加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

EXCEL应用——文本快速分类

(2010-02-05 14:10:44)
标签:

excel

字符串

变量

数据类型

函数

分类: VBA

    早些的时候,有朋友问EXCEL中如何判断某个单元格中包含某个字符,用if函数和countif函数的嵌套可以轻易的解决这个问题,这让我想起前些天工作中所做的一个例子,而现实工作中,我们常常遇到这样的例子,需要将各种各样的数据进行分类,譬如游戏行业中将各种游戏分门别类,各种游戏充值渠道的分类,物流行业中快件按目的地进行地区或机场分类等等。当数据量小的时候我们还可以逐个逐个的手工分类,当数据量大于500的时候这将是一件非常耗时的事情。

    下面举个简单的例子,网络支付方式有很多,我们希望按照自己的意愿将各种支付方式进行分类,为下一步的数据整理分析作准备,例如:我们将所有银行类的支付方式归为网银支付,神州行充值卡,联通充值卡归为短信充值,骏网一卡通等其他充值方式归类为其他充值,下面我们看看如何快速的实现这个过程:

http://s14/middle/4ecd024bg7ed6f270683d&690

                                                                 (看不到动态效果请双击查看原图)
    轻轻一按分类按钮,问题就解决了,下面看看分类按钮的背后隐藏的代码,代码如下:
http://s13/bmiddle/4ecd024bg7ed6888d0b6c&690
短短十行代码,就能迅速解决成千上万条记录的分类问题,上面主要应用到了以下函数,这些函数解释如下:
1.Dim
   通常会使用 Dim 语句来声明变量。一个声明语句可以放到过程中以创建属于过程的级别的变量。或在声明部分可将它放到模块顶部,以创建属于模块级别的变量。例如:创建了变量 strName 并且指定为 String 数据类型,Dim strName As String。
   变量可以声明成下列数据类型中的一种:Boolean、Byte、Integer、Long、Currency、Single、Double、Date、String(变长字符串)、String * length (定长字符串)、Object 或 Variant。如果未指定数据类型,则 Variant 数据类型被赋予缺省。主要变量类型的简写如下:
integer % 短整型
long & 长整型
single ! 单精度浮点型
double # 双精度浮点型
currency @ 货币型
string $ 字符型

2. UBound 函数
UBound 函数,返回一个 Long 型数据,其值为指定的数组维可用的最大下标。
语法
UBound(arrayname[, dimension])
arrayname 必需的。数组变量的名称,遵循标准变量命名约定。
dimension 可选的;Variant (Long)。指定返回哪一维的上界。1 表示第一维,2 表示第二维,如此等等。如果省略 dimension,就认为是 1。
例如:Dim A(1 To 100, 0 To 3, -3 To 4)
语句         返回值
UBound(A, 1)  100
UBound(A, 2)   3
UBound(A, 3)   4
 
3. InStr 函数
InStr 函数,返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置。
语法
InStr([start, ]string1, string2[, compare])
start 可选参数。为数值表达式,设置每次搜索的起点。如果省略,将从第一个字符的位置开始。如果 start 包含 Null,将发生错误。如果指定了 compare 参数,则一定要有
start 参数。
string1 必要参数。接受搜索的字符串表达式。
string2 必要参数。被搜索的字符串表达式。
Compare 可选参数。指定字符串比较。如果 compare 是 Null,将发生错误。如果省略 compare,Option Compare 的设置将决定比较的类型。指定一个有效的LCID (LocaleID) 以
在比较中使用与区域有关的规则。
compare 参数设置为:

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有