Excel 信息对比_数组版
Sub LOOKUP_UChur()
Dim i As Long '=== sourceWorksheet = 数据源表名称
Dim sourceWorksheet As Worksheet
Dim taskWorkSheet As Worksheet
Dim bgnTime, endTime As Date '*********************************************
' [1] ------ 数据源表 *** Sheet 名称
Set sourceWorksheet = ThisWorkbook.Worksheets("低保数据")
Const swsh_KeyColName = "B" ' 关键列 , 身份证号所在的列名称
Const swsh_BeginRow = ' 开始行号 ' [2] ------ 任务表 *** Sheet 名称
Set taskWorkSheet = ThisWorkbook.Worksheets("扶贫和低保比对")
Const twsh_KeyColName = "F" ' 关键列号 , 身份证号所在的列号
Const twsh_BeginRow = ' 开始行号 '*********************************************
bgnTime = Now()
Dim arrKeyData() As Variant ' 这种声明方式是声明一个动态数组
arrKeyData = sourceWorksheet.Range(swsh_KeyColName & swsh_BeginRow & ":" & swsh_KeyColName & sourceWorksheet.UsedRange.Rows.Count) For i = twsh_BeginRow To taskWorkSheet.UsedRange.Rows.Count
Debug.Print "第 ["; i & "]行: 已找到数据:" & taskWorkSheet.Range(twsh_KeyColName & i).Text
DoEvents curRow = GetRowNo(arrKeyData, taskWorkSheet.Range(twsh_KeyColName & i).Text)
If curRow > Then
'[3] ???? ===== 任务表 J --> 数据源 A
taskWorkSheet.Range("G" & i) = sourceWorksheet.Range("C" & swsh_BeginRow + (curRow - )).Text
End If
Next i endTime = Now()
MsgBox ("任务已完成, 处理所需的时间: " & Application.WorksheetFunction.Text(DateDiff("s", bgnTime, endTime) / / , "[H]:mm:ss") & " 秒 " & vbCrLf _
& "*****************************" & vbCrLf & bgnTime & vbCrLf & endTime) DoEvents End Sub Function GetRowNo(ByRef pArrKeyData As Variant, pFindValue As String) As Long GetRowNo =
' curRow = Application.Match(pFindValue, pArrKeyData, 0)
'-- Application.Match 所需的时间比较多 6 秒
'-- 下面的循环方式查找数组 所需的时间 2 秒 If Not (UBound(pArrKeyData) > ) Then Exit Function Dim j As Long
For j = LBound(pArrKeyData) To UBound(pArrKeyData)
If Not (IsError(pArrKeyData(j, ))) Then
If pArrKeyData(j, ) = pFindValue Then
GetRowNo = j
Exit Function
End If
End If Next j Exit Function End Function
Excel 信息对比_数组版的更多相关文章
- DSAPI多功能组件编程应用-HTTP监听服务端与客户端_指令版
前面介绍了DSAPI多功能组件编程应用-HTTP监听服务端与客户端的内容,这里介绍一个适用于更高效更快速的基于HTTP监听的服务端.客户端. 在本篇,你将见到前所未有的超简化超傻瓜式的HTTP监听服务 ...
- DSAPI HTTP监听服务端与客户端_指令版
前面介绍了DSAPI多功能组件编程应用-HTTP监听服务端与客户端的内容,这里介绍一个适用于更高效更快速的基于HTTP监听的服务端.客户端. 在本篇,你将见到前所未有的超简化超傻瓜式的HTTP监听服务 ...
- yii2通过foreach循环遍历在一个用户组中取出id去另一表里查寻信息并且带着信息合并原数组信息---案例
yii2通过foreach循环遍历在一个用户组中取出id去另一表里查寻信息并且带着信息合并元数组信息---案例 public function actionRandomLists(){ //查询到了所 ...
- JavaWeb_(session和application)用户登录注册模板_进阶版
用户登录注册模板_基础版 传送门 用户登录注册模板进阶版 添加了获得获得当前登录用户信息及存储登录人数 用户登录后,在首页.注册页.登录页显示登录用户信息和存储登录人数信息 目录结构 <%@pa ...
- HDU 4287 Intelligent IME(字典树数组版)
Intelligent IME Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- hdu 1277 AC自动机入门(指针版和数组版)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1277 推荐一篇博客(看思路就可以,实现用的是java): https://www.cnblogs.co ...
- Insert插入不同的列数量,统计信息对比
一.实验目的: Insert插入表中相同的行数量,不同的列数量,通过10046 和autotrace工具对比查看逻辑读.物理读.time数据,并得出相应结论 二.测试 2.1测试流程: =>[为 ...
- php 数据集转换树、递归重组节点信息多维数组(转)
一.将数据集转换成树 /** * 将返回的数据集转换成树 * @param array $list 数据集 * @param string $pk 主键 * @param string $pid 父节 ...
- 部分Web服务器信息对比
本文参考wikipedia的Web服务器比较页面的数据,选取了其中自己感兴趣的Web服务器的信息进行了对比,包括,Apache HTTP Server.Apache Tomcat.Nginx.Catt ...
随机推荐
- python --subprocess 范例
范例1:查看ipconfig -all命令的输出,并将将输出保存到文件tmp.log中: import subprocess handle = open(r'd:\tmp.log','w') p=su ...
- 会话过程保存数据对象cookie和session
1 cookie是以键值对保存在浏览器端,服务器端可以创建.接收.发送 cookie 信息. request可以接收 cookie, response 可以发送 cookie. 1)cookie 可以 ...
- Swift 的 pod 第三方库
#HTTPpod 'Alamofire' #Elegant HTTP Networking in Swiftpod 'SwiftHTTP' #Thin wrapper around NSURLSess ...
- 简单实例,说明自动生成Makefile的详细过程
为了编译一个简单的源文件main.c,需要自动生成一个makefile,以下是步骤: 第一步:----------在/root/project/main目录下创建一个文件main.c,其内容如下:-- ...
- python随机数seed用法
import random ... def main(): a = random.Random() a.seed(1) print a.random() 这样就可以通过种子取得固定随机值了 网上很多只 ...
- Atitit.500 503 404错误处理最佳实践oak
Atitit.500 503 404错误处理最佳实践oak 1. 错误处理的流程(捕获>>日志>>db>>email alert) 1 2. 错误的捕获:strut ...
- 每日英语:Who Ruined The Humanities?
You've probably heard the baleful reports. The number of college students majoring in the humanities ...
- spring-boot 中application.properties的各种配置
###########################################################datasource connect mysql################# ...
- haproxy+keepalived实现高可用负载均衡(转)
软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现.LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载. ...
- [Kernel]理解System call系统调用
转自:http://os.51cto.com/art/200512/13510.htm 现在,您或许正在查看设备驱动程序,并感到奇怪:“函数 foo_read() 是如何被调用的?”或者可能疑惑: “ ...