VBA 练习-从两个库中调用数据到活动表中
练习VBA
Sub 填报入库单()
Dim basedb As String, cpdb As String, wb As Workbook, ws As Worksheet, curWs As Worksheet, v As String
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
basedb = "D:\基础库\分析数据.xlsx"
cpdb = "D:\基础库\成品抽检信息.xlsx"
Set curWs = ActiveSheet
'当前活动表的行数
curlastrow = curWs.Range("d6556").End(xlUp).Row
If curlastrow < Then
MsgBox "请确保数据是从第四行开始"
Exit Sub
End If
'分析数据库中提取
If Len(Dir(basedb)) = Then
MsgBox "找不到文件:" & vbCrLf & basedb, vbExclamation, "错误"
Else
Set wb = GetObject(basedb)
For i = To curlastrow
'产品批号
v = curWs.Range("d" & i)
For Each ws In wb.Worksheets
'分析库中的行数
wslastrow = ws.Range("a65536").End(xlUp).Row
For j = To wslastrow
If ws.Range("a" & j) = v Then
curWs.Range("O" & i & ":U" & i) = ws.Range("C" & j & ":I" & j).Value
curWs.Range("X" & i) = ws.Range("N" & j)
curWs.Range("G" & i) = Range("X" & i) & Range("Y" & i)
Exit For
End If
Next
Next
Next
wb.Close
End If
'成品抽检信息中提取
If Len(Dir(cpdb)) = Then
MsgBox "找不到文件:" & vbCrLf & cpdb, vbExclamation, "错误"
Else
Set wb = GetObject(cpdb)
For i = To curlastrow
v = curWs.Range("d" & i)
For Each ws In wb.Worksheets
wslastrow = ws.Range("a65536").End(xlUp).Row
For j = To wslastrow
If ws.Range("a" & j) = v Then
curWs.Range("V" & i) = ws.Range("Q" & j)
Exit For
End If
Next
Next
Next
wb.Close
End If
Application.ScreenUpdating = True
Application.DisplayAlerts = True
'关闭工具库
Windows("工具库.xlsm").Activate
ActiveWindow.Close False
End Sub
VBA 练习-从两个库中调用数据到活动表中的更多相关文章
- Entity Framework 6 Recipes 2nd Edition(11-11)译 -> 在LINQ中调用数据库函数
11-11. 在LINQ中调用数据库函数 问题 相要在一个LINQ 查询中调用数据库函数. 解决方案 假设有一个任命(Appointment )实体模型,如Figure 11-11.所示, 我们想要查 ...
- 一个I/O线程可以并发处理N个客户端连接和读写操作 I/O复用模型 基于Buf操作NIO可以读取任意位置的数据 Channel中读取数据到Buffer中或将数据 Buffer 中写入到 Channel 事件驱动消息通知观察者模式
Tomcat那些事儿 https://mp.weixin.qq.com/s?__biz=MzI3MTEwODc5Ng==&mid=2650860016&idx=2&sn=549 ...
- flink04 -----1 kafkaSource 2. kafkaSource的偏移量的存储位置 3 将kafka中的数据写入redis中去 4 将kafka中的数据写入mysql中去
1. kafkaSource 见官方文档 2. kafkaSource的偏移量的存储位置 默认存在kafka的特殊topic中,但也可以设置参数让其不存在kafka的特殊topic中 3 将k ...
- Hive扩展功能(三)--使用UDF函数将Hive中的数据插入MySQL中
软件环境: linux系统: CentOS6.7 Hadoop版本: 2.6.5 zookeeper版本: 3.4.8 主机配置: 一共m1, m2, m3这五部机, 每部主机的用户名都为centos ...
- 手把手教你springboot中导出数据到excel中
手把手教你springboot中导出数据到excel中 问题来源: 前一段时间公司的项目有个导出数据的需求,要求能够实现全部导出也可以多选批量导出(虽然不是我负责的,我自己研究了研究),我们的项目是x ...
- 在一个apk中调用另外一个apk中的activity
今天忽然想到如果要在一个activity中调用另外一个activity该怎么办呢? 感觉这个应该比较简单,应为activity的启动方式就两种:显式启动.隐式启动: 显式启动的话肯定不行,那就只能使用 ...
- c代码中调用c++,c++代码中调用c代码
注意这里的c调用c++或者c++调用c的意思是.c文件中调用.cpp文件中的代码,或者相反 集成开发环境如vc++6.0或者vs都是通过文件后缀来区别当前要编译的是C代码还是C++代码,然后采用相应的 ...
- bug日记之---------js中调用另一个js中的有ajax的方法, 返回值为undefind
今天做一个OCR授权的需求, 需要开发一个OCR弹框, 让用户选择是否授权给第三方识别公司(旷世科技)保存和识别用户个人信息, 照片等. 其中用到了在一个js的方法中调用另外一个js的方法, 其中有一 ...
- 在Vue 中调用数据出现属性不存在的问题
这已经是我在调用数据时趟过几次的坑了,索性记录下来防止后面再犯: 一般我们请求数据来渲染一个页面的时候,请求下来的数据基本上都是数组或是对象,再通过列表循环和插值表达式渲染的页面:在data 中提前声 ...
随机推荐
- PWA-网络
PWA-网络 fetch API Get fetch('/some/url',{ method:'GET' }).then(function(resp){ //success }).catch(fun ...
- 20145202马超《网络对抗》Exp9*_* Web安全基础实践
本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 1.实验后回答问题 (1)SQL注入攻击原理,如何防御 感觉上次做的也是sql注入,就是故意的非法输入(输入的是一些指令)让 ...
- SpringBoot学习:整合shiro(rememberMe记住我功能)
项目下载地址:http://download.csdn.NET/detail/aqsunkai/9805821 首先在shiro配置类中注入rememberMe管理器 /** * cookie对象; ...
- focus如何实现事件委托
事件委托是利用事件冒泡机制的一种优化手段,如果有很多列表元素要绑定事件,那么就可以用事件委托来优化(不需要给每个元素都绑定事件).但是对于focus这种特殊的表单事件,它不会冒泡,那么又该如何实现这一 ...
- hdu1874畅通工程续(floyd)
畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- Selenium(Python)驱动Chrome浏览器
Chrome浏览器与chromedriver.exe驱动可以是官网上最新的, 随意! Chrome.py: from selenium import webdriverfrom selenium.we ...
- git push origin master 错误解决办法
一.错误代码如下: error: failed to push some refs to 'https://github.com/wbingithub/drag.git' 二.在网上搜了一下,如下写就 ...
- Tensorflow学习第1课——从本地加载MNIST以及FashionMNIST数据
很多Tensorflow第一课的教程都是使用MNIST或者FashionMNIST数据集作为示例数据集,但是其给的例程基本都是从网络上用load_data函数直接加载,该函数封装程度比较高,如果网络出 ...
- visionpro吧-百度贴吧
Halcon,Visionpro视频教程,观看下载地址:http://www.211code.com
- leetcode个人题解——#22 Generate Parentheses
思路: 递归解决,如果左括号个数小于右括号或者左括号数小于总括号对数,则生成一个左括号,如果左括号数大于右括号,生成一个右括号. class Solution { public: vector< ...