vba 两个表 信息合体一个表格
2024-09-23 15:30:23
1 把Excel某一区域的内容读入到数组中: Dim strArray() As Variant Dim wk_data As Variant Set wk_data = Sheets("Sheet1") strArray = wk_data.Range("A1:CV100").Value 2 把数组的内容写入到Excel中 wk_data.Range("A1").Resize(UBound(strArray, 1), UBound(strArray, 2)).Value = strArray
vba的强大在于 规范 文件名wookbooks- 1工作表名sheets ,2工作表名sheets ,3工作表名sheets ,n工作表名sheets
1字段名 21字段名 3字段名 n字段名
最大行 最大列
循环 +遍历 +判断+分割
操作 复制 粘贴 改变属性
1.1.1 方法1:
ActiveSheet.UsedRange.Rows.Count
ActiveSheet.UsedRange.Columns.Count
缺点:有时可能会比实际数大一些,原因是如果你把最后几行(列)数据清除后(非整行或整列删除),用这个命令仍返回未清除前的值。就是说现在虽然是空的,但是你曾经用过也算你的。
1.1.2 方法2:
ActiveSheet.Range("A65535").End(xlUp).Row
ActiveSheet.Range("IV1").End(xlToLeft).Column
可以简写为:
ActiveSheet.[A65536].End(xlUp).Row
ActiveSheet.[IV1].End(xlToLeft).Column
缺点:只能计算出一列(行)的最后一个单元格所在的行(列)数。本例是只返回A列最后一个单元格所占的行数。
1.1.3 方法3:
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Column
缺点:在工作表进行对删除或清除操作时也会变得比实际情况大。
1.1.4 方法4:
ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column
缺点:在工作表进行对删除或清除操作时也会变得比实际情况大。
1.1.5 方法5:
Application.CountA(ActiveSheet.Range("A:A"))
Application.CountA(ActiveSheet.Range("1:1"))
只能统计一列(行)的实际使用情况,得到的不一定是最后一行(列)的位置。方法2的数值比此方法大时,说明在A列的数据间有空白未填写的单元格。
1.1.6 方法6:
ActiveSheet.Cells.Find(What:="*",After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
ActiveSheet.Cells.Find(What:="*",After:=[A1], SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
效果同方法2
1.1.7 方法7:
MaxRow =Application.Evaluate("=MAX((A1:A1048576<>"""")*ROW(1:1048576))")
1.1.8 方法8:
Me.Cells(1048576,1).End(xlUp).Row’Excel2007
Me.Cells(1048576,1).End(xlUp).Row’Excel2003
这一代码返回工作表中最后一个包含非空内容的单元格所在的行号,而不管这一单元格与Me.Cells(1,1)之间是否有包含空白内容的单元格。而且这一方法将跳过或者说忽略被隐藏的单元格,比如,数据表有连续的50行,如果第48到50行隐藏了,则这一程序只返回47。
1.1.9 方法9:
Sheets("sheet1").Cells(Rows.Count,1).End(3).Row
r = .Cells(.Rows.Count,1).End(xlUp).Row
1.1.10 方法10:
利用 Worksheet.Rows属性
Private Sub DisplayRowCount()
MsgBox("This worksheetcontains " & _ Me.Rows.Count.ToString() & " rows.")
End Sub
以上方法中比较常用的是方法1和方法2。
评分
相同的元素 function FilterData(a,b)
{ //循环判断数组a里的元素在b里面有没有,有的话就放入新建立的数组中
var result = new Array();
var c=b.toString();
for(var i=;i<a.length;i++)
{
if(c.indexOf(a[i].toString())>-)
{
result.push(a[i]);
}
}
return result;
} 不同的元素 a一定是比b数组长,然后找出a中和b不同的。即a去掉b以后的 function FilterData(a,b)
{ //循环判断数组a里的元素在b里面有没有,有的话就放入新建立的数组中
var result = new Array();
var c=b.toString();
for(var i=;i<a.length;i++)
{
if(c.indexOf(a[i].toString())==-)
{
result.push(a[i]);
}
}
return result;
}
最新文章
- jquery点击隐藏和显示
- python-logging-日志系统
- 气象API(2)
- 在Ubuntu Kylin下安装QQ教程
- jmeter之json数据参数化 断言等
- Arduino开发常见错误
- gson在java和json串之间的应用
- linux scp
- Git 安装与使用(二)
- CSS入门学习(转)
- socket原理详解
- 强联通块tarjan算法
- lodash源码分析之获取数据类型
- Activity的生命之路
- Python 爬虫修养-处理动态网页
- Centos7下安装Docker(详细的新手装逼教程)
- 七年一冠、IG牛13的背后是什么!
- python_cookbook之路:数据结构-解压可迭代对象赋值给多个变量以及扩展的迭代解压语法(*)
- 洛谷P4151 最大XOR和路径 [WC2011] 线性基+图论
- 系列篇:Python3.x那些事儿
热门文章
- NLTK vs SKLearn vs Gensim vs TextBlob vs spaCy
- python os.system重定向stdout到变量 ,同时获取返回值
- git搭建私有仓库
- Identity Server 4 原理和实战(完结)_Hybrid Flow 实例, Claims, 角色授权和策略授权
- [CVE-2017-8464]Microsoft Windows远程命令执行漏洞复现
- java 多线程,sleep()和wait()
- Codeforces 749C【模拟】
- Unity的http通信--unity与python的django通信
- bzoj 2395: [Balkan 2011]Timeismoney【计算几何+最小生成树】
- Metabolic Signatures of Cystic Fibrosis Identified in Dried Blood Spots For Newborn Screening Without Carrier Identification (文献分享一组-孔楠楠)