【Excel&VBA】VBA解析本地文件目录 读取文本数据

偶尔用到Excel中VBA处理一些事情,毕竟鄙人比较懒,总是喜欢把那些重复性的工作想方设法交给计算机来处理,那样才能证明自己的大脑还在运转着,总结一些VBA中读取解析本地文件目录的方法。

 1 ‘ 该函数是获取指定目录下所有的 文件夹 名
 2 Sub readFile()
 3     Path = "d:\"
 4     sonpath = Dir(Path, vbDirectory)
 5     Do While sonpath <> ""
 6         ‘ 跳过当前的目录及上层目录
 7         If sonpath <> "." And s <> ".." Then
 8             ‘ 使用位比较来确定MyName代表一目录
 9             If (GetAttr(Path & sonpath) And vbDirectory) = vbDirectory Then
10                 MsgBox sonpath  ‘ 如果它是一个目录,打印名称
11                 ‘ 然后就可以打开这些目录下的文件
12             End If
13         End If
14         sonpath = Dir   ‘查找下一个目录
15     Loop
16 End Sub

 1 ‘ 该函数为获取指定目录下所有文件名
 2 ‘ 注释部分,如果加上,则不包括"."和".."
 3 ‘ 否则获取的文件名包括上面列出的两个
 4 Sub readFile1()
 5     Path = "D:\video\"
 6     sonpath = Dir(Path, vbDirectory)
 7     Do While sonpath <> ""
 8         ‘ If sonpath <> "." And sonpath <> ".." Then
 9             MsgBox sonpath
10         ‘ End If
11         sonpath = Dir
12     Loop
13 End Sub

注解:

Path是指路径,其中"D:\video\"和"D:\video"是有区别的,前者可以解析到video的子目录,而后者只是解析video本身该层目录;

 1 ‘ 读取文件内容,并将每行依次复制到A列
 2 ‘ path为文件绝对地址,lineNum为行号
 3 Function readFile2(path, lineNum)
 4     ‘ 错误机制处理,可以去掉,如果有错误,会自动跳转到Error标签处执行
 5     On Error GoTo Error
 6
 7     ‘ 打开文件,并以符号"1"来代替文件流
 8     Open path For Input As #1
 9
10         ‘ 判断文件流"1"是否读取到文件尾
11         Do While Not EOF(1)
12
13             ‘ 读取文件流"1"中的一行,并赋值给变量"a"
14             Line Input #1, a$
15             ‘ 将变量"a"复制到指定单元格里
16             Range("A" + CStr(lineNum)).Value = a$
17             ‘ 行号+1
18             lineNum = lineNum + 1
19         Loop
20     Close #1
21     Exit Function
22 Error: MsgBox Err.Description
23 Close #1
24 End Function

 1 ‘ 读取指定目录下的所有txt文件,并将其内容拷贝到sheet1的A列中
 2 Sub readTxts()
 3     ‘ 父级路径设置,最后有"\",注意
 4     path = "d:\data\data\"
 5     ‘ 设置行号
 6     lineNum = 1
 7
 8     ‘ 获取该目录下所有文件名(只放置txt格式文件,其他的格式尚未判断)
 9     sonpath = Dir(path, vbDirectory)
10     Do While sonpath <> ""
11         If sonpath <> "." And sonpath <> ".." Then
12             MsgBox "正在读取" + sonpath
13
14             ‘ 调用读取文件的函数(txt文件绝对路径,行号)
15             result = readFile2(path + sonpath, lineNum)
16         End If
17         sonpath = Dir
18     Loop
19 End Sub  

以上两个函数是用来读取本地文本文件,将文本中的数据读取到Excel表格中

时间: 2024-10-06 22:24:06

【Excel&VBA】VBA解析本地文件目录 读取文本数据的相关文章

Structured Streaming 实战案例 读取文本数据

1.1.1.读取文本数据 spark应用可以监听某一个目录,而web服务在这个目录上实时产生日志文件,这样对于spark应用来说,日志文件就是实时数据 Structured Streaming支持的文件类型有text,csv,json,parquet ●准备工作 在people.json文件输入如下数据: {"name":"json","age":23,"hobby":"running"} {"n

使用Scanner输入数据-读取文本数据

Scanner类的方法定义: · 构造方法:public Scanner(InputStream source): · 设置读取分割符:public Scanner useDelimiter(String pattern): · 判断是否有数据:public boolean hasNextXxx(): · 取出数据:public 数据类型 nextXxx(): 1 package cn.demo; 2 3 import java.io.File; 4 import java.io.FileInp

python读取文本数据写入到数据库及查询优化

文本数据格式 ip2int函数用于IP地址转化为整数 int2ip函数用于整数转化为IP地址 insert_row函数用于插入数据库记录 from __future__ import print_function import torndb def get_mysql_conn():     return torndb.Connection(         host=mysql["host"] + ":" + mysql["port"],   

QT中读取文本数据(txt)

下面的代码实现读取txt文档中的数据,并且是一行一行的读取. void MainWindow::on_pushButton_clicked() { QFile file("abcd.txt"); if(! file.open(QIODevice::ReadOnly|QIODevice::Text)) qDebug()<<file.errorString(); else qDebug()<<"openok"; file.seek(0); QTe

MySQL中游标使用以及读取文本数据

前言 之前一直没有接触数据库的学习,只是本科时候修了一本数据库基本知识的课.当时只对C++感兴趣,天真的认为其它的课都没有用,数据库也是半懂不懂,胡乱就考试过了.现在学习大数据分析,接触了数据挖掘,才感觉到数据库是不可跨越的坎.直到现在才感觉到<操作系统>.<编译原理>.<计算机组成原理>等等课程的重要性.在浩瀚的知识面前,个人是非常渺小的.掌握了一种思想之后,任何事情都不困难,困难的是你是否真的静下心看一看帮助文档.认真的Google.静心.静气.认真.执着. 游标-

C++文本数据读取

读取文本数据的时候,其相应的流程与写入颇为相似,但也有一些区别,毕竟是两个不同的功能. 1.添加必须的头文件:#include <fstream> .#include <cstdlib>. 2.定义相应的数组,用于存储文件的名称. 3.定义相应的变量,用于存储文件写入的数据. 4.创建一个ifstream对象. 5.将ifstream与文本文件进行关联. 6.测试文件打开是否正常. 7.使用ifstream对象和<<运算符进行数据写入. 8.使用完ifstream对象后

文本数据增量导入到mysql

实现思路:       实现Java读取TXT文件中的内容并存到内存,将内存中的数据和mysql 数据库里面某张表数据的字段做一个比较,如果比较内存中的数据在mysql 里存在则不做处理,如果不存在则将该数据插入mysql数据库中 步骤1.读取文本数据   给一个string 返回值 步骤2.查询mysql 表中数据  给一个String 返回值 步骤3  .内存中文本数据和读取的mysql 数据做比较 /** * 实现读取文件信息 * * @param fileName * @return *

python读取文本文件数据

本文要点刚要: (一)读文本文件格式的数据函数:read_csv,read_table 1.读不同分隔符的文本文件,用参数sep 2.读无字段名(表头)的文本文件 ,用参数names 3.为文本文件制定索引,用index_col 4.跳行读取文本文件,用skiprows 5.数据太大时需要逐块读取文本数据用chunksize进行分块. (二)将数据写成文本文件格式函数:to_csv 范例如下: (一)读取文本文件格式的数据集 1.read_csv和read_table的区别:  #read_cs

EXCEL的VBA开发笔记

最近需要帮忙用EXCEL记一些账目,为了提高效率,稍微学习下了VBA进行编程,笔记之. 在EXCEL中按alt+F11就能跳到VB的开发界面 变量定义: Dim        变量as 类型   '定义为局部变量,如 Dim          xyz as integerPrivate    变量as 类型   '定义为私有变量,如 Private       xyz as bytePublic     变量as 类型   '定义为公有变量,如 Public        xyz as sing