机房收费系统(三)——由row和rows引发的错误

      在敲机房“收取金额查询“中,将flexgrid控件中的数据输出到execel表格中的时候,经过查资料,发现直接调用execel.exe可以完成,以为这样方法比较方便,但是在我们现在使用的电脑上根本就没有Microsoft Excel 14.0 Object Library,那怎么办呢?经过百度,得知除了这种方法,还有别的方法,那就是在工程的根目录下建立一个execel表格,在VB中写下列代码:


但是,经过我的实践,发现这个代码一直提示变量未定义,也就是指代码中的xlApp,xlSheet, xlBook 这几个变量。那就定义一下吧,于是我便把代码改查如下形式:

机房收费系统(三)——由row和rows引发的错误_第1张图片

本以为这样就没有问题了,于是高兴的运行一下吧,但是我发现高兴的太早了,调出来的execel表格是空的,flexgrid中的数据根本传不进去,问旁边小孙同学,人家说我的代码跟你的一样,我的怎么就行呢,当时我就纳闷了,我跟她的代码就是一样,怎么就是不行呢,而且,在点一次导出按钮后flexgrid中本来查询出的内容也就没有了,变成这个样子:

点击“导出到execel表格”以前:机房收费系统(三)——由row和rows引发的错误_第2张图片



点击“导出到execel表格”按钮以后:

机房收费系统(三)——由row和rows引发的错误_第3张图片


这是怎么回事?????

经过我仔细的对照代码,终于发现了问题出在了哪里,原来我把代码:

FlexGrid1.Row = i
      FlexGrid1.Col = j

写成了:FlexGrid1.Rows = i     FlexGrid1.Cols = j

就差一个“s”差别就这么大,那row和rows到底有什么区别呢?百度一下吧。

百度结果:ROW  :表示返回引用的行号。

               ROWS :返回引用或数组 (数组:用于建立可生成多个结果或可对在行和列中排列的一组参数进行运算的单个公式。数组区域共用一个公式;数组常量是用作参数的一组常量。)的行数。

 一个表示行号,一个表示行数,怪不得写错后原来的表格少了两列呢。。。。。。看来以后写代码还是认真点好。


你可能感兴趣的:(机房收费系统(三)——由row和rows引发的错误)