注册 登录
编程论坛 VFP论坛

请教高手如何将数据库的字段导出到同EXCEL的不同工作表

smart921 发布于 2020-10-15 23:33, 2658 次点击
比如:将基本信息导出到sheet1中,将教育信息导出到sheet2中,将薪酬信息导出到sheet3中。
10 回复
#2
厨师王德榜2020-10-16 10:16
    只能大概给出一个示例:
    myexcel = CREATEOBJECT("Excel.Application")
    myexcel.DisplayAlerts = .F.  &&  不弹出警告框   
    wb = myexcel.Workbooks.open("d:\cExl\X1.xlsx")
    myexcel.Visible = .T.  
    wb.sheets("sheet1").Activate
    ... 写入 基本信息
    wb.sheets("sheet2").Activate
    ... 写入 教育信息
    wb.sheets("sheet3").Activate
    ... 写入 薪酬信息
    wb.save()
    wb.close()
    myexcel.quit()
#3
schtg2020-10-16 18:24
学习啦,谢谢!

[此贴子已经被作者于2020-10-17 05:33编辑过]

#4
smart9212020-10-16 21:47
回复 3楼 schtg
谢谢!我的意思是按每门课程建个工作表,不知怎么处理?
#5
sdta2020-10-16 22:48
上传相应数据
#6
smart9212020-10-17 07:51
回复 5楼 sdta
将数据库aaa数据导出,生成aaa.xls.
只有本站会员才能查看附件,请 登录
#7
sdta2020-10-17 10:02
CLOSE DATABASES
USE aaa
nRows = RECCOUNT() + 1
_vfp.DataToClip("aaa", RECCOUNT(), 3)
oExcel = CREATEOBJECT("Excel.Application")
oExcel.WorkBooks.Add
oExcel.Workbooks(1).Sheets(1).Paste
oExcel.Workbooks(1).Sheets(1).Name = "基本信息"
oExcel.Workbooks(1).Sheets(2).Name = "教育信息"
oExcel.Workbooks(1).Sheets(3).Name = "薪酬信息"
oExcel.Workbooks(1).Sheets(1).Cells(1, 8).Resize(nRows, 3).Select()
oExcel.Selection.Copy
oExcel.Workbooks(1).Sheets(2).Paste
oExcel.Workbooks(1).Sheets(1).Cells(1, 11).Resize(nRows, 2).Select()
oExcel.Selection.Copy
oExcel.Workbooks(1).Sheets(3).Paste
oExcel.Workbooks(1).Sheets(1).Cells(1, 8).Resize(nRows, 5).Delete
oExcel.Workbooks(1).Sheets(1).Cells(1, 1).Resize(nRows, 7).Select()
oExcel.Workbooks(1).Sheets(1).Columns.AutoFit
oExcel.DisplayAlerts = .F.
oExcel.ActiveWorkbook.Saveas(SYS(5)+SYS(2003)+"\bbb.xls",39)
oExcel.DisplayAlerts = .T.
oExcel.Quit
RELEASE oExcel
#8
smart9212020-10-17 13:46
十分感谢!
#9
变秃且变强2020-10-19 20:06
#10
wengjl2020-10-21 16:45
这个内容,以前有一个实例的帖子的,楼主你查找一下,应该能查到,大约是3年前的吧
#11
wengjl2020-10-21 16:49
1