Q:如下所示,一个名为“InputFile.csv”文件,每行有6个数字,每个数字使用空格分隔开。
现在,我要将以6 至69开头的行放置到另一个名为“Outpu...
Q:如下所示,一个名为“InputFile.csv”文件,每行有6个数字,每个数字使用空格分隔开。
现在,我要将以6 至69开头的行放置到另一个名为“OutputFile.csv”的文件中。中只是给出了少量的示例数据,我的数据有几千行,如何快速对这些数据进行查找并将满足条件的行复制到新文件中?
A:VBA代码如下:
Sub FilterTextFile()
Dim ReadLine As String
Dim buf
‘使用Open语句打开或创建文件
OpenThisWorkbook.Path & “\InputFile.csv” For Input As #1
OpenThisWorkbook.Path & “\OutputFile.csv” For Output As #2
‘循环直至到达指定文件末尾
Do Until EOF(1)
‘读取文件中的一行并将其赋值给ReadLine变量
Line Input #1, ReadLine
‘将ReadLine中的字符串拆分成数组
buf =Split(ReadLine, ” “)
‘判断数组的第1个值是否处于6 至69之间
‘如果是则将其写入文件号指定的文件
If buf( ) >= 6 And buf( ) < 7 Then
excel插入Endnote文献时死机的解决方法
Endnote已成为很多人写论文必备的用来管理和插入文献的利器,无论是Endnote X3还是X4,在Office Word 2010 /Word 2007在插入Endnote 文献时,总会出现Word 疑似死机的问题,文档界面会停止响应很长一段时间才恢复。如果这时打开任务管理器,会发现Word 2010占用CPU为1
Print #2, ReadLine
End If
Loop
‘关闭文件
Close #2
Close #1
End Sub
代码假设“InputFile.csv”和“OutputFile.csv”文件都放置在与代码工作簿相同的文件夹中。
代码中:
1.第1个Open语句用来打开“InputFile.csv”文件,指定文件号#1。
2.第2个Open语句用来创建“OutputFile.csv”文件,指定文件号#2。由于文件夹中事先没有这个文件,因此Excel会在文件夹中创建这个文件。
3.EOF(1)用来检测是否到达了文件号#1的文件末尾。
4.Line Input语句从文件号#1的文件中逐行读取其内容并将其赋值给变量ReadLine。
5.Split函数将字符串使用指定的空格分隔符拆分成下标以为起始值的一维数组。
6.Print语句将ReadLine变量中的字符串写入文件号#2的文件。
7.Close语句关闭指定的文件。
代码的图片版如下:
运行代码后,将在工作簿所在的文件夹中生成一个如下所示的名为“OutputFile.csv”的文件。
if函数嵌套式
if函数嵌套式?嵌套if函数使用步骤1:例如考试等级分为不合格,合格,良好和优秀。 嵌套if函数使用步骤2:输入公式=IF(E2=””,”需补考”,IF(E2<60,”不合格”,IF(E2<80,”合格”,IF(E2<90,”良好”,”优秀”))))。 嵌套if函数使用步骤3:If函数嵌套规则