• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
Excel统计某电话号码有多少人打过
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
Excel统计某电话号码有多少人打过
软件发布 Excel统计某电话号码有多少人打过
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 办公软件 >> Excel >> Excel统计某电话号码有多少人打过

Excel统计某电话号码有多少人打过

添加时间: 2006-9-13 2:38:34  作者: Excel应用  阅读次数:49   来源: http://d9soft.com

       

  派出所的一个朋友在调查一起案件的时候,遇到了一个如题的问题,请我帮忙。由于要保密他不能提供原始数据,只是给我谈了一下要求。目前他们通过一个嫌疑犯的通话记录,从通话记录中又列入了n个新嫌疑犯,而且也得到每个嫌疑犯的通话记录。现在就要将这些通话记录进行统计,即同一个电话号码,每个嫌疑犯打了多少次,有多少个嫌疑犯同时打过同一个号码。

  根据上述总结,Excel表如下:

图一:原始数据表

图二:统计结果表

  上图说明:

  图一:用户一、用户二、用户三、用户四正面的数字为模拟的电话号码;方向是指主叫还是被叫,没有什么意义。

  图二:用户正面的数字是该电话所使用的次数,如果一个电话只被某一用户打过,这样就不统计,换句话说就是统计结果表中的电话号码至少被两个以上的用户打过。

  解决的思路:

  ⒈ 此统计无法使用函数、数据透视表等普通的方法来解决。我采用了VBA编程来实现的统计。

  ⒉ 首先将所有用户的电话(不重复,重复的只取一次),提取出来存放到统计结果表中。这样结果表中的电话是唯一的。

  ⒊ 通过结果表的电话号码为基础,统计每个用户使用该号码的次数并将统计的结果存放到结果表该用户下。

  ⒋ 删除同一个电话号码被两个以下用户使用的行。

  解决的方法:

  ⒈ 因为用户的数量是未知的,但从第2列开始是已经的,这样我们就可以通过循环来进行统计。循环的条件通过第1行从第2列开始,单元格不空。

  ⒉ 每个用户的电话号码循环与⒈类似

  具体的程序源代码如下:

Private Sub CommandButton1_Click()
    Sheets(2).Rows(2 & ":" & 65536) = ""
    Sheets(2).Columns("B:IV") = ""
    Dim Ls, i, j, Isa, k, yhs
    Isa = False
    i = 2
    If Sheets(1).Cells(1, 2) = "" Then
        MsgBox "没有用户,无法统计!", vbOKOnly + vbCritical, "错误提示"
        Exit Sub
    Else
        Do While True
            If Sheets(1).Cells(1, i) <> "" Then
                Sheets(2).Cells(1, i) = Sheets(1).Cells(1, i)
                i = i + 1
            Else
                Exit Do
            End If
        Loop
        yhs = i - 1
    End If
   
    Ls = 2
    Do While Sheets(1).Cells(1, Ls) <> ""
        i = 2
        Do While Sheets(1).Cells(i, Ls) <> ""
            If Sheets(2).Cells(2, 1) = "" Then
                Sheets(2).Cells(2, 1) = Sheets(1).Cells(i, Ls)
            Else
                j = 2: Isa = False
                Do While Sheets(2).Cells(j, 1) <> ""
                    If Sheets(2).Cells(j, 1) = Sheets(1).Cells(i, Ls) Then Isa = True: Exit Do
                    j = j + 1
                Loop
                If Not Isa Then Sheets(2).Cells(j, 1) = Sheets(1).Cells(i, Ls)
            End If
            i = i + 1
        Loop
        Ls = Ls + 1
    Loop
   
    Ls = 2
    Do While Sheets(2).Cells(1, Ls) <> ""
        i = 2
        Do While Sheets(2).Cells(i, 1) <> ""
            j = 2: k = 0
            Do While Sheets(1).Cells(j, Ls) <> ""
                If Sheets(2).Cells(i, 1) = Sheets(1).Cells(j, Ls) Then k = k + 1
                j = j + 1
            Loop
            If k <> 0 Then Sheets(2).Cells(i, Ls) = k
            i = i + 1
        Loop
        Ls = Ls + 1
    Loop
   
    '===========================================
    ' 删除非同一电话多个用户使用的行
    '===========================================
    i = 2
    Do While Sheets(2).Cells(i, 1) <> ""
        j = 2: k = 0
        Do While j <= yhs
            If Sheets(2).Cells(i, j) <> "" Then k = k + 1
            j = j + 1
        Loop
        If CInt(k) < 2 Then
            Sheets(2).Rows(i).Delete Shift:=xlUp  '删除i行
        Else
            i = i + 1
        End If
    Loop
    '===========================================
    MsgBox "统计完毕!", vbOKOnly + vbInformation, "系统提示"
    Sheets(2).Select
End Sub

 

上下文章:

 

上一篇文章: 用Excel做个工程倒计时牌 下一篇文章: Excel2007中插入页眉和页脚超简单

相关文章:

  • Excel2007无法安装加载项解决办法
  • 微软对VMware的威胁到底有多大
  • Excel中让你填充不连续的单元格
  • 访问统计上的陷阱,值得站长的你我他关注
  • 非常值得各位站长注意的统计事件

相关软件:

  • 中小学成绩统计分析系统 (教委与学校通用企业版) V4.01
  • Excel比较大师 0.09
  • EasySix彩票统计 1.0.1.0
  • Excel登分王 3.04 通用版
  • Accent Excel Password Recovery V2.31
  • 勤哲Excel服务器 2005 V6.0 企业版客户端

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

办公软件分类导航

  • Office
  • Word
  • Excel
  • PowerPoint
  • OutLook
  • IE
  • WPS Office
  • 永中Office
  • 邮件处理
  • 办公其他

本类经典文章推荐

  • Excel的同一单元格中为中文添加拼...
  • Excel 2002制作自动记录的单位考勤...
  • 教你四招--轻松让你成为Excel函数...
  • Excel数据分类汇总满足多种数据整...
  • 利用Shift键—轻松把Excel表格转换...
  • 小数点你要听我的 在Excel提高录入...
  • 轻松搞定Excel表格与图片的转换
  • Excel中“多排表”帮你省钱又美容
  • 听着就行 让Excel报账
  • 构造Excel动态图表

Excel阅读排行

  • 巧用Excel函数来实现工作表间的数...
  • 制作多种图表类型并存的Excel图表
  • 常用Excel图表类型详解
  • Excel“条件格式”公式实例
  • Excel 2002制作自动记录的单位考勤...
  • Excel数据分类汇总满足多种数据整...
  • 教你四招--轻松让你成为Excel函数...
  • 建立“产品发货单”模板
  • 构造Excel动态图表
  • Excel函数应用教程:函数的参数

办公软件阅读总排行

  • 微软Office 2007 beta 2全程体验—...
  • 金山词霸PDF文档取词攻略
  • 巧用Excel函数来实现工作表间的数...
  • 同一篇Word文档设置多个不同的页眉...
  • 禁止CTFMON.EXE自动加载
  • 制作多种图表类型并存的Excel图表
  • Word长文档的制作技巧(2)
  • 金山词霸2003疑难解答
  • 正规公文制作有一套
  • Office组件轻松把PDF文件转成Word...

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有