查询某文件夹下所有EXCEL表格文件工作表行数和列数等信息
Sub CheckExcelFileINFO()Dim v_Path, v_FileName, v_currentWbNameDim v_Wbook As WorkbookDim v_FName2 As StringDim i As Long '变量Dim j As LongDim n As Long '文件计数变量Dim v_Rows As Long '行数Dim v_Cols As Long '列数Application.ScreenUpdating = False '暂停刷新'Application.DisplayAlerts = False '使不弹出询问 是否替换目标单元格内容'v_Path = ActiveWorkbook.Path '当前目录Dim v_FileDialog As FileDialogSet v_FileDialog = Application.FileDialog(msoFileDialogFolderPicker) '选择目录'Application.FileDialog 的参数说明:'msoFileDialogOpen 打开旧文件'msoFileDialogSaveAs 保存文件'msoFileDialogFilePicker 选择文件'msoFileDialogFolderPicker 选择目录v_FileDialog.Title = "选择文件夹" '窗口标题v_FileDialog.InitialFileName = "E:\" '设置默认目录'v_FileDialog.AllowMultiSelect = True '可复选多个文件'v_FileDialog.Filters.Clear'v_FileDialog.Filters.Add "Excel文件", "*.xlsx" '文件类型'v_FileDialog.Filters.Add "所有文件", "*.*"If v_FileDialog.Show = -1 Then '“v_FileDialog.Show = -1”表示有选择v_Path = v_FileDialog.SelectedItems(1)ElseMsgBox "没有选择文件夹", vbExclamation, "提示"Exit Sub '退出End If'For Each vF In v_FileDialog.SelectedItems '选择多个文件时' MsgBox vF'Next vF'字符串截取子串函数说明:'Left(Text, num_chars) '从左边开始截取num_chars个字符'Right(Text, num_chars) '从侧边开始截取num_chars个字符'Mid(Text, Start_Num, num_chars) '在第Start_Num位起截取num_chars个字符'调用Shell选择目录方式二:'Dim v_Shell'Set v_Shell = CreateObject("Shell.Application")'Set v_Path = v_Shell.BrowseForFolder(&O0, "选择文件夹", &H10, "E:\")'If v_Path Is Nothing Then '“Not v_Path Is Nothing”表示有选择' MsgBox "没有选择文件夹", vbExclamation, "提示"' Set v_Shell = Nothing' Set v_Path = Nothing' Exit Sub '退出'End If'MsgBox v_Path.items.Item.PathIf Right(v_Path, 1) <> "\" Then '检查路径最后是否有“\”符v_Path = v_Path & "\"End If'Dir [(pathname, [ attributes ])]'Windows操作系统,Dir的attributes参数可使用通配符来指定多个文件:多字符 (*) 、单字符 (?)v_FileName = Dir(v_Path & "*.xls")v_currentWbName = ActiveWorkbook.Namen = 0 '计算文件数量Do While v_FileName <> "" '遍历对应目录下文件If v_FileName <> v_currentWbName Then'On Error GoTo Error_Handle: '打开文件失败时跳转On Error Resume Next '打开文件遇到错误时继续往下执行Set v_Wbook = Workbooks.Open(Filename:=v_Path & v_FileName, ReadOnly:=True, UpdateLinks:=False) '打开文件'v_Wbook.Name '文件名'取行数v_Rows = v_Wbook.Sheets(1).UsedRange.Cells(Sheets(1).UsedRange.Rows.Count, 1).Row'取列数v_Cols = v_Wbook.Sheets(1).UsedRange.Cells(1, Sheets(1).UsedRange.Columns.Count).Column'处理业务If Err.Number <> 0 Thenv_Wbook.Close savechanges:=False '关闭文件Set v_Wbook = Nothing'重试Set v_Wbook = Workbooks.Open(Filename:=v_Path, ReadOnly:=True, CorruptLoad:=XlCorruptLoad.xlRepairFile, UpdateLinks:=False)DoEventsEnd If
'Error_Handle:If Err.Number <> 0 Then '出现错误时捕获 Err.Description 和 Err.Numberv_FName2 = v_FName2 & Chr(13) & v_FileName & " (" & Err.Description & Err.Number & ")"Elsev_FName2 = v_FName2 & Chr(13) & v_FileName '记录处理文件名End Ifn = n + 1 '文件数+1With Workbooks(1).ActiveSheetj = .Cells(Rows.Count, 1).End(xlUp).Row '当前表格第一列最后非空单元格行号If (j = 1 And Not IsEmpty(Cells(1, 1).Value)) Or j > 1 Then'若返回非空单元格行号为“1”,且对应列第1个单元格不为空'或者非空单元格行号大于“1”j = j + 1 '调整新行号为非空单元格行号+1End If.Cells(j, 1) = n.Cells(j, 2) = v_FileName.Cells(j, 3) = v_Rows & "行".Cells(j, 4) = v_Cols & "列"End Withv_Wbook.Close False '关闭文件Set v_Wbook = NothingEnd Ifv_FileName = DirLoopRange("A1").Select '定位至一个单元格Application.ScreenUpdating = True '恢复MsgBox "搜索" & v_Path & "有" & n & "个工作薄:" & Chr(13) & v_FName2, vbInformation, "提示"
End Sub
查询某文件夹下所有EXCEL表格文件工作表行数和列数等信息相关推荐
- python tkinter实现的文件夹下的excel表格汇总
应工作需要.写了一个python实现的对文件夹下的所有excel表格汇总的小工具,现将源码发布,希望能给后来人参考. import xlrd import os import xlwt from xl ...
- VBA小程序--打开文件夹内所有Excel表格(代码简单,针对xls + xlsx,注释清楚,小白亦可轻松看懂)
PS:使用下面的代码时,请先根据自己所需要处理的文件夹,进行更改mypath的路径 Sub VBA打开文件夹内所有Excel表格()Dim myPath$, myFile$, WB As Workbo ...
- 手把手教你用Python批量实现文件夹下所有Excel文件的第二张表合并
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 怀君属秋夜,散步咏凉天. 大家好, ...
- r读取文件夹下的所有csv文件_[R语言]读取文件夹下所有子文件夹中的excel文件,并根据分类合并。...
解决的问题:需要读取某个大文件夹下所有子文件夹中的excel文件,并汇总,汇总文件中需要包含的2部分的信息:1.该条数据来源于哪个子文件夹:2.该条数据来源于哪个excel文件.最终,按照子文件夹单独 ...
- pandas合并文件夹下的excel文件
研究背景: 由于工作中每天需要计算遗留工单,但工单创建的时间不确定,需要导出近半年的数据进行筛选,而系统一次只能到处一个月的数据,格式为excel格式文件,文件大学为10MB左右,每个文件数据量2万行 ...
- Python为文件夹下所有Excel工作簿的所有sheet截图
from PIL import ImageGrab # 需安装Pillow包 import xlwings as xw import pandas as pd import osdef main(*a ...
- python遍历文件夹下所有excel文件_读取某文件夹下所有excel文件 python
import os import pandas as pd from sklearn import linear_model path = r'D:\新数据\每日收益率' filenames = os ...
- Python复制文件夹下的excel文件的指定列
主要实现功能: 批量操作一个文件夹下的Excel文件 对该文件夹下的Excel同等操作 复制特定列到新建Excel文件 完成单元格获取文件名的操作 python操作excel详细 # -*- code ...
- Excel批量解密文件夹下密码一致的文件
Excel批量解密文件夹下密码一致的文件 工具下载地址: //download.csdn.net/download/qq_35866846/11990142 代码如下 Option Explicit ...
最新文章
- ICLR 2020 九篇满分论文!!!
- python 多进程异常处理
- Chapter 5 Blood Type——11
- 机器学习实战-第12章Fpgrowth代码勘误+递归打印效果分析
- 小米bl未解锁变砖了如何刷机_如何安装MIUI 10
- es6 TypedArray视图
- 【Spark】Spark的Kryo序列化
- java自由布局_java怎么在界面上随意摆放位置?
- c++ 使用nacos_超赞!用阿里开源的Nacos做SpringCloud注册中心真贴心...
- 计算机中常用的三种码制,码制
- iOS 硬件 定位 - 详解 数据的处理
- 2023年【安徽省安全员C证】免费试题及安徽省安全员C证证考试
- 【单片机仿真】(二十)ORG — 设置起始地址
- GBase 8a 高可用集群同城双活灾备方案
- job历史执行记录查询 oracle_Oracle数据库定时任务配置和日志执行情况查询
- 学习vue源码(14)深入学习diff
- 75个最佳网络安全工具
- 计算机和电脑键盘进水怎么办,小编教你笔记本键盘进水了怎么办
- DataX篇—离线同步作业分析及JSON构建
- 魔兽争霸中的恶搞笑话集
热门文章
- JsonNode与java相互转换
- php fsockopen tcp,PHP使用Fsockopen发布数据
- Requested internal only, but not enough space
- c# mysql executenonquery_c#数据四种执行方法(ExecuteNonQuery)
- js 去除字符串左右两边空格
- oracle index include,oracle中与索引相关的视图—all_indexes | 学步园
- 关于各类3D游戏异常掉帧问题
- 小鬼学cocos2dX笔记01——创建精灵动画(一)
- 老九java线上_java应用监测(4)-线上问题排查套路
- form表单的提交方式