VBA—-Visual Basic For Application的简称,属于VB的一个子集,广泛应用于Word套件的自动化,其寄存于现有的EXCEL或word等的文件里面

日常生活中,需要做到有逻辑性质的筛选EXCEL数据再进行输出的话往往比较麻烦,由此利用到EXCEL里面的宏,就是VBA编程就可以大大方便处理速度。今天举的例子是读取excel各个表格信息再进行处理输出。

现有表格一个

A B C

1 名字 数学 语文

2 motta 85 90

3 CCJK 80 75

4 Transee 99 88

需求:现在需要输出成一个TXT文本文件,里面格式如下

motta,85,90

CCJK,80,75

Transee,99,88

在excel2003或excel2007中打开宏编辑器

VBA使用VB语法,高级语言语法大同小异,具体函数可以查询相应API

Dim MyTXT As String, Path As String ‘定义输出的TXT文件

Dim h As Long, Data1(100) As Single, Data2(100) As Single, Data3(100) As _

Single

Sub CopyTXT()

On Error GoTo 0 ‘出现错误就结束

Name = InputBox(“输入要存储的文本文件名称(不需加.txt)。”) ‘自定义存储名称

Path = Application.ThisWorkbook.Path & Application.PathSeparator ‘与表格路径相同

MyTXT = Path & Name & “.txt” ‘要转存的TXT文件全称

‘先定义1~3列1~3行中的单元格的数据为指定的变量Data1(1)至Data3(3)

For h = 1 To 3

Data1(h) = Cells(h, 1)

Data2(h) = Cells(h, 2)

Data3(h) = Cells(h, 3)

Next h

‘将预定的变量值逐个输入到TXT文件,仅针对你上传的样式7列11行,格式为数据之间逗号分隔,按行排列

Open MyTXT For Output As #1

For h = 2 To 4

Print #1, Data1(h) & “,” & Data2(h) & “,” & Data3(h)

Next h

Close #1

0 End Sub

解析:#1为其文件流,里面的相应处理可以按照你的需要进行编写相关的程序,之后关闭,理论上文本类文件都可以输出不单只是txt,xml或lrc等之类都是可以的。

编写完成后,在宏那里选择执行。