VBA之文件筛选
在工作中,经常会碰到从一堆腐朽的source中按照一个列表去筛选出来现在还要用的source文件。
这个如果用vba来实现的话,会节省大量的时间,而且不会出错。
前提说明:
将想要复制的文件名列表放在第一sheet的第一列,然后执行程序
首先选择源目录和目标目录, 然后会从源目录中查找文件,将存在的文件自动复制的目标目录中,
不存在的文件,记录在第二列里。
Sub fileFilter()
Dim folderOld As String
Dim folderNew As String
Dim fileNm As String
Dim fileNmOld As String
Dim fileNmNew As String
Dim i As Integer
Dim j As Integer
j =
MsgBox "Set before moving folder"
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = - Then
folderOld = .SelectedItems()
End If
End With
MsgBox "Set after moving folder"
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = - Then
folderNew = .SelectedItems()
End If
End With
For i = To
fileNm = Worksheets().Cells(i, )
If fileNm <> "" Then
fileNmOld = folderOld & "\" & fileNm
fileNmNew = folderNew & "\" & fileNm
If Dir(fileNmOld) <> "" Then
FileCopy fileNmOld, fileNmNew
Else
Worksheets().Cells(j, ) = fileNm
j = j +
End If
End If
Next
MsgBox "file filter over"
End Sub
另外,vba读取文件方法备用
Sub readFile() Dim txtLine
Dim FileObj
Dim TextObj
Dim FilePath With Application.FileDialog(msoFileDialogFilePicker)
If .Show = - Then
FilePath = .SelectedItems()
End If
End With Dim txt As String
Open FilePath For Input As #
Do While Not EOF()
Line Input #, txt
MsgBox txt
Loop
Close # End Sub
VBA之文件筛选的更多相关文章
- java实现简单的文件筛选
package filenameFilter; import java.io.File; /* * 实现功能: * 获取指定路径下的指定格式的文件; * */ public class Test { ...
- EXCEL VBA 选择文件对话框
Sub XXX() Dim arr() arr = Application.GetOpenFilename("所有支付文件 (*.xls;*.xlsx;*.csv),*.xls;*.xlsx ...
- HALCON初步:文件夹遍历,文件筛选,文件名拆分,图片读取及保存
[1]文件夹遍历 list_image_files ( : : ImageDirectory, Extensions, Options : ImageFiles) ImageDirectory: 文件 ...
- 20201126-1 txt文件筛选与读写【】
Exercise 1import os # 设置文件夹路径为'工作文件夹',获取文件夹下的所有文件和文件夹名称 path = './工作文件夹/' files_list = os.listdir(pa ...
- VBA 每日文件按日期打包存放
每天省出1小时,换个好心情 1.判断是否存在tempfolder (过渡文件夹) 2.不存在 则在目标目录下新建文件夹tempfolder 在网上看到一种更简单的方法 if dir("e:\ ...
- winform文件筛选器
在.net 框架中,微软给我们封装了一个用于打开文件的对话框——OpenFileDialog.而该对话框包含一个可以筛选文件的属性——Filter,利用该属性,可选筛选出我们需要的文件. 因此,我 ...
- vba判断文件是否存在的两种方法(转)
方法1. 用VBA自带的dir()判断,代码如下: 在 Microsoft Windows 中, Dir 支持多字符 (*)和单字符 (?) 的通配符来指定多重文件 Function IsFileEx ...
- 中望CAD VBA检测文件是否存在
Option Explicit Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "Path ...
- VBA文件对话框的应用(VBA打开文件、VBA选择文件、VBA选择文件夹)
在VBA中经常要用到文件对话框来进行打开文件.选择文件或选择文件夹的操作.用Microsoft Office提供的文件对话框比较方便.用法如下Application.FileDialog(fileDi ...
随机推荐
- jquery实现html表格隔行变色
效果图 实现代码: 通过css控制样式,利用jquery的addClass方法实现 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Trans ...
- MySQL数据库备份--mysqldump用法
导出要用到MySQL的mysqldump工具,基本用法是: shell> mysqldump [OPTIONS] database [tables] 如果你不给定任何表,整个数据库将被导出. ...
- CSS3系列之3D制作
一.序 博主最近这些天,突发奇想的想研究一下CSS3的东西,从而提升一下CSS的能力,在学习的过程中发现其实CSS3是一个挺复杂的东西,深入的研究,你可能会涉及到初中的光学理论来帮助理解一些概念,同时 ...
- 在 MAC OS X 安装 ADB (Android调试桥)
什么是 ADB? Android调试桥( adb )是一个开发工具,帮助安卓设备和个人计算机之间的通信. 这种通信大多是在USB电缆下进行,但是也支持Wi-Fi连接. adb 还可被用来与电脑上运行的 ...
- 那些年构建SSH所遇到的坑
SSH框架有非常多的优点,在这里我不再赘述,我们经常会去构建这种框架的项目,但是在构建SSH时候经常会遇到一些问题,例如常见的网页上的所报的错误404,500等,404错误一般比较好排查,没有找到该页 ...
- Poisson泊松分布
PMF 若随机变量\(K\)的概率质量函数PMF为 \[ P(K = k) = e^ {-\lambda} \frac {\lambda^k}{k!} \] 则称:\(K \sim Poisson(\ ...
- UI: 标题栏
TitleBarDemo.xaml <Page x:Class="Windows10.UI.TitleBarDemo" xmlns="http://schemas. ...
- Thinking in java学习笔记之map的应用
Random rand = new Random(47); Map<Integer,Integer> m = new HashMap<Integer,Integer>(); f ...
- ARM学习 之 如何在向内核写入系统调用
本文主要介绍两个例子:1-系统调用打印“hello kernel” 2-驱动开发板的蜂鸣器 使用的是友善之臂(Friendly ARM)的开发板,三星2440 =================== ...
- jsp中iframe填充装个页面
首先要引入这个css,由于我之前没有引入这个,导致iframe的高度一只是默认高度,没有改变 <style type="text/css"> body, html { ...