1. vba逐行读取excel
1.用Shell函数打开指定的文件夹
代码如下:
Sub exceloffice()
'*****************
'上面一连串代码
'最后打开文件夹看下效果
Dim sPath As String
sPath = "c:\test"
Shell "explorer.exe " & sPath, vbMaximizedFocus
End Sub
Shell函数是vba内置的函数,使用起来非常方便。它可以直接运行各种exe程序,同时附带参数运行。
使用Shell函数还可以直接运行Python打包后的exe程序,从而借助Python的强大功能助推VBA。
在本例中,Shell函数通过调用文件资源管理器explorer.exe直接打开指定的文件夹,其中 vbMaximizedFocus表示打开的时候最大化显示。
方法二:用Shell对象打开指定的文件夹
代码如下:
Sub exceloffice()
'*****************
'上面一连串代码
'最后打开文件夹看下效果
Dim sPath As String
sPath = "c:\test"
Dim oShell As Object
Set oShell = VBA.CreateObject("shell.application")
With oShell
.Open (sPath)
End With
End Sub
其实这个原理和Shell是一样的,但是Shell对象提供了自动化接口,功能更全,不仅可以打开文件夹,还可以做很多操作电脑的事情。
比如切换到桌面、打开运行对话框、关闭电脑等等,如下所示
Sub exceloffice()
Set oShell = CreateObject("shell.application")
With oShell
'切换到桌面
.ToggleDesktop
'打开运行对话框
.FileRun
'关闭电脑,记得保存文件
.ShutdownWindows
End With
End Sub
2. 逐行读取文件内容
循环读取一个文件的内容。
这样做没有任何意义,不如把读取的内容保持在变量当中,节省空间时间。如果非要反复读取的话可以使用rewind函数把文件指针重置。
函数名: rewind()
功 能: 将文件内部的位置指针重新指向一个流(数据流/文件)的开头
注意:不是文件指针而是文件内部的位置指针,随着对文件的读写文件的位置指针(指向当前读写字节)向后移动。而文件指针是指向整个文件,如果不重新赋值文件指针不会改变。rewind函数作用等同于 (void)fseek(stream, 0L, SEEK_SET);
循环读取多个文件的内容。
把多个文件名存在一个字符串数组当中。使用循环语句反复打开-读取-关闭即可。
例如:
char * s[3]={"文件一","文件二","文件三"};
for(i=0;i<3;i++){
f=fopen(s[i]); //打开第i个文件
//读取数据
fclose(f);//关闭文件
}
3. excel逐行读取数据
1、在excel表格如何将前几行在打印时每页都打,需要设置每页都能打印出标题行,可以通过页面布局进行设置。在页面布局中选择“打印标题”,选择需要作为每页都要打印的数据区域,确定即可。
2、具体操作如下。
点击“页面布”
点击“打印标题”
选择数据需要打印的数据区域
选择实顶端标题行
确定
4. excel文件读写
方法一:NPOI
NPOI 是 POI 项目的 .NET 版本。POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。
使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写。
方法二:使用COM组件。
缺点:
只能在安装excel 2003时才可以。
优点:(特殊情况下使用)
使用于excel打开后需要点击“保存”才能用程序读取的情况。
方法三:使用office 驱动。
优点:
此方法最简单,也最普遍。只要安装office就可以使用!
5. excel读取行数
在Excel表格中,使焦点快速定位到某一行的具体步骤如下:
1、首先打开需要编辑的“Excel表格”,进入到编辑页面中。
2、然后点击打勾哦视图中的“编辑栏”。
3、然后在弹出来的编辑栏中,点击名称栏输入想要定位的行数,回车确定。
4、然后就可以自动调到想要定位的那一行了。
6. excel 读取
准备一下工具和原料:
1.一台Windows7系统笔记本电脑。
2.软件Excel 2007。excel表格批量加载方法:2.点击视图,选择全部重排。
3.选择垂直并排。
4.点击确定按钮查看效果。
7. 逐行读取文件的方法
Scanner sc=new Scanner(new File("abc.txt"));
int c=1;
FileWriter fw =new FileWriter("sf.txt");
while(sc.hasNextLine()){
String s=c+sc.nextLine();
fw.write(s+"\r\n");
fw.flush();
c++;
}
fw.close();
sc.close();
- 相关评论
- 我要评论
-