毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

VFP学生成绩管理系统及VFP下的SQL和EXCEL技术 第2页

更新时间:2007-10-3:  来源:毕业论文

','经理','销售经理'),1,0) as 管理人员,;

    iif(inlist(职务,'总经理','经理','销售经理'),1,0) as 管理人员,;

    iif(inlist(职务,'秘书'),1,0) as 秘书;

from table into cursor query1

 

第二步:转换并计算

Select 部门      as 部门,;

    sum()    as ,;

    sum()    as ,;

    sum(大学本科) as 大学本科,;

    sum(大学专科) as 大学专科,;

    sum(技术人员) as 技术人员,;

    sum(管理人员) as 管理人员,;

    sum(管理人员) as 管理人员,;

    sum(秘书)   as 秘书;

from query1 into cursor query1;

group by 部门

 

  不要以为我把“from query1 into cursor query1”写错了,这样写的语句确实可以使用。

  到这一步,统计表就计算出来了,不信用 BROWSE 看看。往下面我们应该说说怎样把现在统计出的数据输出到 EXCEL 中了(当然什么样子的数据都可以)。

首先用 CreateObject 函数建立一个 Excel automation 对象,程序如下:

 

local excel,o

define windows WaitWin at 0,0 size 10,60 system ;

font 'times new roman',12 ;

title '提示' close float zoom &&用于处理提示信息的窗口

move windows waitWin center

acti windows waitwin

set color to w+/n

clear

 

excel=createobject('excel.application')

if type('excel')='U' &&未能产生

EXCEL对象

  ? '启动 EXCEL 失败…'

  release windows WaitWin

  return

endif

 

ReportTitle='XXXX公司人员分布情况'

ExcelFile="xls1.xls"

excel.caption=ReportTitel

select query1

if not file(ExcelFile)

  export to (ExcelFile) type xls

endif

 

excel.workbooks.open(ExcelFile)

o=excel.activeworkbook.activesheet &&用对象代替这么长的一串字

o.cells(1,1).value=ReportTitle

 

*

* 第一行是标题,故从第二行开始

*

scan for recno()>1 &&每一行

  ?'正在将数据转换到 Excel 表格中…',recno()

  for i=1 to fcount() &&每一列

    fld=field(i)

    if type(fld)='C'&&如果字段太宽,Excel可能不能正确接受数据

      o.cells(recno()+3,i).value=trim(&fld)

    else

      o.cells(recno()+3,i).value=&fld

    endif

  endfor

endscan

 

o.cells(1,1).select

excel.ActiveWindow.windowstate=2

excel.ActiveWorkbook.save()

excel.visible=.t.

clear

startTime=time()

set cursor off

 

*

* 等待 Excel 处理完毕后再继续

*

do while .t.

  @1,4 say '已启动后台 Excel 表格处理程序,处理中…'

  @2,4 say 'Ctrl+End 继续处理…'

  @4,4 say '开始时间:'

  ??starttime

  @5,4 say '现在时间:'

  ??time()

  &&VFP会在此等待,除非你从 EXCEL中退出或按下 Ctrl+End

  if inkey(0.5)=23 or type('o.name')='U'

    exit

  endif

enddo

set cursor on

rel

上一页  [1] [2] [3] 下一页

VFP学生成绩管理系统及VFP下的SQL和EXCEL技术 第2页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。