关于VB读写Excel的问题

问题描述

一直以来都不会使用程序读写excel这两天在论坛里找到一些相关的资料,但是不全,也不能完全解决我的问题拿实际的来说读取一个表格内的数据,这个比较容易比如一个存有书名的表格里面有书名,价格,及出版年份可以先建一个类,例如我建一个类名为books,然后这个类具有一些特性,例如,name,price,publicyear等等然后建立实例数组,把表格内的数据逐行读进数组内即可之所以没有采用数据库是因为两个原因1数据库配置比较麻烦2数据库编程我还不太会,而小数据存储和维护excel更方便所以以下不再对数据库进行讨论但是如何写入excel呢?以下是我在找到的一些方法DimxlAsObjectDimxbookAsObjectDimxsheetAsObjectxl=CreateObject("excel.Application")xbook=xl.workbooks.addxsheet=xbook.worksheets(1)xsheet.cells(1,1).value="helloworld"

简单来讲就是把这是将helloworld写入A1单元格的方法现在问题来了1,在没有关闭该表格的情况下,如何在表格内新增一行数据?假如写入的数据较多,不知道该表格当前已经写到多少行了,怎么办?2,数据写完以后,怎么保存这个表格?顺便说明一下,我现在所采用的是vs2012进行编写的程序

解决方案

解决方案二:
假设内容都写在第一列dimiasInteger=1DoWhileNotIsNothing(xsheet.cells(i,1).value)i=i+1Loop这是笨办法,我也不知道有没有更好的。保存用xbook.SaveAs("文件名.xlsx")
解决方案三:
1数据库配置比较麻烦这个观点我不赞同,数据库配置麻烦只在一些大型的关系型数据库,例如Oracle,SQLSERVER,MYSQL,DB2等,但小型数据库就不会,例如Access只需要安装Office组件即可(就这点我也觉得麻烦),根据楼主的描述我推荐楼主使用SQLite数据库,不需要配置连安装环境都不要2数据库编程我还不太会,而小数据存储和维护excel更方便楼主只需要简单的增删改查,数据库的操作只要会简单的T-SQL就可以,excel简单操作确实方便,但是涉及到大量的增删改查时,还是数据库方便,况且只要会找度娘,简单的操作数据库的增删改查应该对于楼主没有什么大问题吧.excel的操作1-网上搜NOPI操作EXCEL2-使用微软封装的Excel操作类3-直接操作DataTable然后保存成Excel都可以满足楼主需要当然实现方式自己选择,源码网上大把大把的有
解决方案四:
lz,其实,Excel也算是数据库的一种,符合标准的话同样可以用SQL语句实现增删改查
解决方案五:
不懂VB,但会一点VBA,移植到VS中有一些变化。1.将工作表中的数据读入内存进行处理,很简单。Sublske()DimarrAsObjectDimwbAsWorkbookSetwb=GetObject("D:桌面(勿删)IP规划.xlsx")Setarr=wb.Sheets(1).UsedRangeActiveSheet.Range("d7").Value=arr(1,3)EndSub代码中,set在VS开发平台中好像是要去掉,但EXCEL的VBE编辑器中得加上,否则识别不了对象变量。大意就是将“IP规划.xlsx"这个工作簿中的第1个工作表当中,已经使用的区域usedrange的内容赋给了arr变量,这个时候arr变量就变成了一个二维数组,不需要用循环一个一个写入数据到变量中。与usedrange相似的还有currentRegion,这个就是行与列都为空围起来的区域。2.excel文件(工作簿)可以当成数据库文件来处理,在使用前建立与工作簿的连接,然后就可以使用SQL语句了,本人使用过sql查询语句,其它的没有试验过。涉及语句:dimcnnasobjectSetcnn=CreateObject("adoDB.connection")cnn.Open"Provider=Microsoft.ACE.OLEDB.12.0;ExtendedProperties='Excel12.0Xml;HDR=YES';DataSource="&ThisWorkbook.FullName&";"代码中ThisWorkbook.FullName为带完整路径的EXCEL文件。3.在没有关闭该表格的情况下,如何在表格内新增一行数据?假如写入的数据较多,不知道该表格当前已经写到多少行了,怎么办?答:新增一行数据,最好是在数组变量中进行,两个数组变量进行数据对倒,如果在EXCEL文件中去插入行,写入数据,会有很多的数据移动,处理速度会很慢,不建议。如果是向一个已经有数据的工作表追加数据,可以写代码:Range("a65536").End(xlUp)进行定位,意思为从a65536单元格向上一直到有数据的那个单元格就停止。追加数据从这行开始Range("a65536").End(xlUp).row+1-----------------------------验证码怎么这么难输入,居然都是错的?
解决方案六:
去下载Aspose.Cells这个库,很好用

时间: 2024-04-30 06:19:04

关于VB读写Excel的问题的相关文章

实现VB与EXCEL的无缝连接

excel 如何实现VB与EXCEL的无缝连接 VB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便.因此有很多程序员现在已经充分利用EXECL的强大报表功来实现报表功能.但由于VB与EXCEL由于分别属于不同的应用系统,如何把它们有机地结合在一起,是一个值得我们研究的课题. 一. VB读写EXCEL表: VB本身提自动化功能可以读写EXCEL表,其方法如下: 1.在工程中引用Microsoft Excel类型库

vb和Excel简单运用嗯宏的用法

问题描述 vb和Excel简单运用嗯宏的用法 如何在点击Excel时运行已经录制的宏,在宏里面输入什么代码,求后台代码,求大神 解决方案 1.录制好宏,并取名. 2.在Excel文件的VBA环境中,双击ThisWorkbook进入代码窗口. 3.写入下列代码: Private Sub Workbook_Open() '已经录制的宏 End Sub

【原创】.NET读写Excel工具Spire.Xls使用(5)重量级的Excel图表功能

              本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html .NET读写Excel工具Spire.Xls使用文章目录:http://www.cnblogs.com/asxinyu/p/4374032.html 前一篇文章:".NET读写Excel工具Spire.Xls使用(4)对数据操作与控制"给大家介绍了Spire.XLS对数据的控制相关功能,这一篇给大家介绍Spire.XLS最大的亮点所在,C#

VB与Excel在乘幂运算时的结果差异及其不合理性

excel|运算 东北林业大学环境科学系 隋祥引言表达式解析是编程工具与电子表格等软件最基本的功能之一,不同的软件在解析表达式时都遵循一定的运算规则,在不同软件中,这些运算规则略有差异,导致计算结果也不同.笔者在实践中发现,VB与Excel在处理"连续乘幂"这一常见运算时,所遵循的法则有着较大的出入,而且都存在着不合理的因素.本文试图通过论述得到一种更为合理的运算模式,并为编写表达式解析类过程提供指导. 问题分析下表列出了VB6.0与Excel2003在处理同一个关于乘方运算的表达式时

python使用xlrd模块读写Excel文件的方法

  这篇文章主要介绍了python使用xlrd模块读写Excel文件的方法,较为详细的分析了xlrd模块的安装.使用与操作Excel文件的相关技巧,需要的朋友可以参考下 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 二.使用介绍 1.导入模块 代码如下: import xlrd 2.打开Excel文件读取数据 代码如下: data = xlrd.open_workbook('excelF

biff8-求助,写一个VFP直接读写EXCEL二进制文件的程序,求教EXCEL文件格式。

问题描述 求助,写一个VFP直接读写EXCEL二进制文件的程序,求教EXCEL文件格式. 在用VFP读写EXCEL文件数据时,当遇到非标准的EXCEL文件或高版本的EXCEL文件,VFP就会出错.这时通过调用第三方软件转换以后就可以使用了.但是在WINDOWS 7以上,系统会阻止VFP调用第三方软件.只有打开EXCEL文件直接读写数据了. 在网上查了一些资料,但是对EXCEL文件的结构和读写的方法还不明白,求助高人指点一下.目前只能读取和解析文件头,试着读出了扇区列表,目录读取不正确,其他还不会

vb操作excel内容。在excel表格中搜索B列内容

问题描述 vb操作excel内容.在excel表格中搜索B列内容 vb读取excel内容.我想获取的是这样的.在excel表格中搜索B列内容为"32KP"对应的E列的内容比如B17为"32KP"则读取E17的内容到text1中.我是这样读取表格的Dim ExcelApp oBook a cSet ExcelApp = CreateObject(""Excel.Application"")Set oBook = ExcelApp

【原创】.NET读写Excel工具Spire.Xls使用(1)入门介绍

在.NET平台,操作Excel文件是一个非常常用的需求,目前比较常规的方法有以下几种: 1.Office Com组件的方式:这个方式非常累人,微软的东西总是这么的复杂,使用起来可能非常不便,需要安装Excel,对于服务器,有时候还需要为配置IIS权限.折腾人,看到很多人在群里面使用这个东西,出现各种抓狂的错误: 这里特别感谢:PowerShell免费软件 的回复,用用powershell + excel 2007的方式,他很好的解决问题.其实我想说的是,Office既然提供了对com组件的支持,

NPOI读写Excel

1.整个Excel表格叫做工作表:WorkBook(工作薄),包含的叫页(工作表):Sheet:行:Row:单元格Cell. 2.NPOI是POI的C#版本,NPOI的行和列的index都是从0开始 3.POI读取Excel有两种格式一个是HSSF,另一个是XSSF. HSSF和XSSF的区别如下:  HSSF is the POI Project's pure Java implementation of the Excel '97(-2007) file format.  XSSF is t