excel中VBA对多个文件的操作
添加引用 "Scripting.FileSystemObject" (Microsoft Scripting Runtime) '用于操作文件、目录
Sub 数据整理部分()
'
' 数据整理到新的Sheet
''
Dim fso As New FileSystemObject
Dim folder As folder
Dim file As file
Dim strExt As String
Dim wkb As Workbook strExt = "xlsx" '查找特定后缀名文件
Set folder = fso.GetFolder(ThisWorkbook.Path)
For Each file In folder.Files
fileExt = fso.GetExtensionName(file) If fileExt = strExt Then
Set wkb = Workbooks.Open(file)
'原始数据表单移到第一
Sheets("Sheet1").Move before:=Sheets()
If wkb.Sheets.Count < Then
wkb.Sheets.Add after:=wkb.Sheets("Sheet1")
End If Dim sheet1 As Worksheet
Dim sheet2 As Worksheet
Set sheet1 = wkb.Sheets()
Set sheet2 = wkb.Sheets() Dim dataCount As Long
dataCount = sheet1.UsedRange.Rows.Count
'获取数据行数,添加dt
sheet2.Range("A1").Value = "dt(s)"
sheet2.Range("A2:A" & dataCount).Value = 0.0175 subName = "_euler" If (InStr(file.Name, subName) > ) Then
'符合条件的文件
wkb.Sheets().Name = "euler"
sheet1.Columns("Q:S").Copy
sheet2.Range("B1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False Else
wkb.Sheets().Name = "Sensor"
'陀螺仪数据
sheet1.Columns("AC:AE").Copy
sheet2.Range("B1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
'磁力计数据
sheet1.Columns("AI:AK").Copy
sheet2.Range("E1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
'加速度计数据
sheet1.Columns("AF:AH").Copy
sheet2.Range("H1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '这里函数加括号会报错!!!
计算位移部分 sheet2
End If
'关闭excel
wkb.Save
wkb.Close
End If
Next End Sub Sub 计算位移部分(sheet As Worksheet)
Dim dataCount As Long
dataCount = sheet.UsedRange.Rows.Count '原始数据积分
sheet.Range("K1").Value = "Ax(m/s/s)"
sheet.Range("K2:K" & dataCount).FormulaR1C1 = "=RC8*9.81"
sheet.Range("L1").Value = "Vx(m/s)"
sheet.Range("L2").Value =
sheet.Range("L3:L" & dataCount).FormulaR1C1 = "=R[-1]C+RC[-1]*RC1"
sheet.Range("M1").Value = "Sx(m)"
sheet.Range("M2").Value =
sheet.Range("M3:M" & dataCount).FormulaR1C1 = "=R[-1]C+RC[-1]*RC1" '减去噪声积分
sheet.Range("K1").Value = "Ax-ave100(m/s/s)"
sheet.Range("K2:K" & dataCount).FormulaR1C1 = "=(RC8-AVERAGE(R2C8:R101C8))*9.81"
sheet.Range("L1").Value = "Vx-ave100(m/s)"
sheet.Range("L2").Value =
sheet.Range("L3:L" & dataCount).FormulaR1C1 = "=R[-1]C+RC[-1]*RC1"
sheet.Range("M1").Value = "Sx-ave100(m)"
sheet.Range("M2").Value =
sheet.Range("M3:M" & dataCount).FormulaR1C1 = "=R[-1]C+RC[-1]*RC1" End Sub
excel中VBA对多个文件的操作的更多相关文章
- Python 中当前位置以及目录文件遍历操作
Python 中当前位置以及目录文件遍历操作 当前位置 print(os.path.dirname(__file__)) 其中 dirname 会选择目录(文件夹),"__file__&qu ...
- excel中VBA的使用
遇到的问题 在工作中遇到了一点小小的问题,需要给我负责带的班级的同学们测试男生1000米,女生800米的成绩.表格是这样的: 体育成绩表 序号 班级 姓名 性别 男1000.女800 成绩 1 1 张 ...
- Java 7 中 NIO.2 的使用——文件递归操作
众所周知,递归编程是一项有争议的技术,因为它需要大量的内存,但是它能简化一些编程任务.基本上,一个递归操作都是程序调用自己传递参数修改的值或者参数传递到当前的程序循环中.递归编程通常用来计算阶乘斐波那 ...
- excel中vba将excel中数字和图表输出到word中
参考:https://wenku.baidu.com/view/6c60420ecc175527072208af.html 比如将选区变为图片保存到桌面: Sub 将选区转为图片存到桌面() Dim ...
- Excel中VBA 连接 数据库 方法- 摘自网络
Sub GetData() Dim strConn As String, strSQL As String Dim conn As ADODB.Connection Dim ds As ADODB.R ...
- html table导出到Excel中,走后台保存文件,js并调用另保存
tableToExcel工具类,此工具类指定格式的表格进行转Excel 格式:其中不能带有thead,tbody和th标签 <table> <tr> <td>表头1 ...
- Excel中VBA进行插入列、格式化、排序
在数据分析中经常需要对数据进行排序.排名,观察指标排名变化情况,手工处理的话不是太困难,但经常使用,还是编写宏比较方便. 宏命令比较简单,不多解释,只说一下注意事项: 1.有合并单元格,比如列.行合并 ...
- excel中vba求摩尔圆包线
Dim f As Double, f1 As Double, f2 As Double, df As Double, oxy() As Double, R() As Double, k As Doub ...
- java 中的try catch在文件相关操作的使用
import java.io.CharConversionException; import java.io.FileNotFoundException; import java.io.FileRea ...
随机推荐
- LeetCode(2) || Add Two Numbers && Longest Substring Without Repeating Characters
LeetCode(2) || Add Two Numbers && Longest Substring Without Repeating Characters 题记 刷LeetCod ...
- seajs配合spm应用之四弹出框
前面描述了 seajs的弹出遮罩层, 还没讲到弹出框, 这里接着把那几个例子介绍完. 目前已经有的工作是, 点击toggle按钮,可以弹出一个背投一样的暗灰色遮罩层, 主要的作用就是遮住当前页面上所有 ...
- java webservice服务器端获取request对象的三种方式
有的时候在webservice里我们需要获取request对象和response对象,比如想要获得客户端的访问ip的时候就需要这么做,下面说三种方式,当然三种方式可能是针对不同方式部署webservi ...
- bzoj1475
明显的二分图最大独立点权集 ans=总点权-最小割(最大流) ..] ,,-,); dy:..] ,-,,); inf=; type node=record ne ...
- 对于利用pca 和 cca 进行fmri激活区识别的理解
1.pca 抛开fmri研究这个范畴,我们有一个超长向量,这个超长向量在fmri研究中,就是体素数据.向量中的每个数值,都代表在相应坐标轴下的坐标值.这些坐标轴所组成的坐标系,其实是标准单位坐标系.向 ...
- 对于利用ica进行fmri激活区识别的理解
首先,ica是一种探索性的方法,属于数据驱动的范畴. ica计算量很大,一般都是离线式计算. ica基于的猜想是,世界是加性的.在我们所研究的脑科学中,所采集到的BOLD信号,是由一些源信号所构成,更 ...
- Rails 看起来很不错哦。
最新在工作中遇上了ruby,确切的说是rails. 其实我的工作是一个渗透测试工程师(其实就是拿着一堆黑客工具扫描的活). 而我不怎么了解ruby on rails.但是客户即将上线的商城系统是用 ...
- HDU 4727 The Number Off of FFF 2013年四川省赛题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4727 题目大意:队列里所有人进行报数,要找出报错的那个人 思路:,只要找出序列中与钱一个人的数字差不是 ...
- 社区发现(Community Detection)算法 [转]
作者: peghoty 出处: http://blog.csdn.net/peghoty/article/details/9286905 社区发现(Community Detection)算法用来发现 ...
- mac上的键盘生活——打字训练
我的打字真的很有问题,错误率实在是太高了,于是乎下定决心改掉打字习惯,起码为了对得起我的机械键盘 所谓双击键(shift)就是当一个键钮上有两个字符时的辅助选择键,像标注在数字1上的 !,就是在你 ...