导入EXCLE问题? (1)在导入EXCEL记录时,怎么装BOOT1 改为指定的名字呀?大哥大姐(2)怎么装指定的单元格画上线呢??谢谢!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不是boot1,是book1,就是保存的文名。 下面是关于vb操作excel的你看看◆访问EXCEL:ExcelSheet = GetObject('','Excel.Sheet') 返回结果为类,则成功。例:ExcelSheet = GetObject('','Excel.Sheet')If Type("ExcelSheet")#'O' THEN =MessageBox( "访问Excel失败!请检查你的系统是否正确安装 Excel 软件!",48,"Excel不正常") RETURN ENDIF◆创建EXCEL实例:oExcel=CreateObject("Excel.Application") 该实例创建后,任何对EXCEL的操作都针对该实例进行,关闭EXCEL后应释放该实例变量:RELEASE oExcel◆打开已存在的EXCEL文件:oExcel.WorkBooks.Open("&lcFileName") &&lcFileName为Excel文件名 打开带有读写密码的文件:oExcel.WorkBooks.Open("&lcFileName",,.F.,,"&R_Pwd","&W_Pwd") &&lcFileName-文件名,R_Pwd-读密码,W_Pwd-写密码,第二个参数表示读写方式:.T.只读,.F.读写◆设置新增工作薄的工作表数:oExcel.SheetsInNewWorkbook=1 &&新建工作表数量定为1个◆新增EXCEL工作薄:oExcel.WorkBooks.Add◆当前工作薄工作表总数:oExcel.WorkSheets.Count &&如:lnSheetCnt=oExcel.WorkSheets.count◆新增EXCEL工作表:oExcel.Sheets.Add &&不带参数为增加至当前工作表之前 在指定工作表后新建工作表:oExcel.Sheets.Add(,oExcel.Sheets(lnSheet),1,-4167) &&lnSheet为指定表号 在最后工作表后新建工作表:oExcel.Sheets.Add(,lnSheetsCnt,1,-4167) &&lnSheetCnt为工作表总数◆激活工作表:oExcel.WorkSheets("Sheet1").Activate &&激活工作表1删除工作表:oExcel.WorkSheets("Sheet2").Delete &&删除工作表2命名工作表:oExcel.WorkSheets("Sheet3").Name="新表" &&重命名工作表3◆使EXCEL可视:oExcel.Vsible=.T.◆Excel的窗口控制:oExcel.WindowState = -4140 &&最小化=-4140,最大化=-4137,还原=-4143◆后台操作报警关闭:oExcel.DisplayAlerts=.F. &&关闭(.F.) 打开(.T.)◆设置工作薄的标题:oExcel.Caption="Vfp控制Excel操作"◆当前工作薄换名存盘:oExcel.ActiveWorkBook.SaveAs("&lcFileName") 换名存为文本文件:oExcel.ActiveWorkBook.Saveas("&lcFileName",-4158) ◆工作薄存盘:oExcel.WorkBooks.Save◆关闭工作薄:oExcel.WorkBooks.Close◆退出EXCEL:oExcel.Quit &&关闭EXCEL后通常应释放实例变量:Release oExcel◆打印当前工作簿:oExcel.ActiveWorkBook.PrintOut(1,oExcel.WorkSheets.count,1,.T.)*默认直接打印整个工作簿:oExcel.ActiveWorkBook.PrintOut()*参数1-数值:当前工作簿中进行打印的起始工作表号(默认1)*参数2-数值:当前工作簿中进行打印的结束工作表号(默认最末)*参数3-数值:打印份数(默认1)*参数4-是预览打印还是直接打印:.T.-预览打印,.F.-直接打印(默认.F.)◆打印当前工作表:oExcel.ActiveSheet.PrintOut() &&共八个参数*参数1-数值:起始页号,省略则默认为开始位置*参数2-数值:终止页号,省略则默认为最后一页*参数3-数值:打印份数,省略则默认为1份*参数4-逻辑值:是否预览,省略则默认为直接打印(.F.)*参数5-字符值:设置活动打印机名称,省略则为默认打印机*参数6-逻辑值:是否输出到文件,省略则默认为否(.F.),若选.T.且参数8为空,则Excel提示输入要输出的文件名*参数7-逻辑值:输出类型,省略则默认为(.T.)逐份打印,否则逐页打印*参数8-字符值:当参数6为.T.时,设置要打印到的文件名◆预览当前工作表:oExcel.ActiveSheet.PrintPreview◆当前工作表页面设置:oExcel.ActiveSheet.PageSetup &&如:With oExcel.ActiveSheet.PageSetup .CenterFooter="第"+"&P"+"页 共"+"&N"+"页" &&页脚中间 .LeftFooter="制表人:"+AllTrim(lcUserName) &&页脚左边 .rightfooter="制表日期:"+Dtoc(Date()) &&页脚右边 .TopMargin=2.5/0.035 &&顶边距 .BottomMargin=2.5/0.035 &&底边距 .LeftMargin=1.4/0.035 &&左边距 .RightMargin=0.5/0.035 &&右边距 .FooterMargin=3.5/0.035 &&脚高距 .PrintTitleRows = "$1:$3" &&固定打印的顶端标题行(第1-3行) .Orientation = 1 &&打印方向: 1为纵向,2为横向 .PaperSize=9 &&纸张类型: A4(注意:不同打印机与版本可能有不同) .PrintQuality = 180 &&打印精度EndWith◆从包含大量内含公式的EXCEL文件导至DBF中时,直接转换会出现致命错误,这时可选择将EXCEL另存为文本文件再导至DBF中可保数据不丢失:oExcel.WorkBooks.Open('D:\123.xls')oExcel.ActiveWorkBook.Saveas('D:\123.txt',-4158 ) &&注意参数-4158不能错◆若判断EXCEL或某个XLS文件是否已经打开(避免不可预知的错误发生):LOCAL lOldSetOpt,mChanNumlOldSetOpt = DDESetOption("SAFETY")= DDESetOption("SAFETY",.F.)mChanNum = DDEInitiate('Excel','SYSTEM') &&EXCEL是否已经打开**mChanNum = DDEInitiate('Excel','&lcFileName') &&lcFileName某XLS文件名,如:D:\123.XLSIF mChanNum <> -1 = messagebox('程序 EXCEL 已经打开,请先将其关闭!',64,'系统提示!')** = messagebox('文件 '+lcFileName+' 已经打开,请先将其关闭!',64,'系统提示!') = DDETerminate(mChanNum) = DDESetOption("SAFETY",lOldSetOpt) RETURNENDIF 1.创建Excel对象 eole=CREATEOBJECT(′Excel.application′) 2.添加新工作簿 eole.Workbooks.add 3.设置第3个工作表为激活工作表 eole.Worksheets(″sheet3″).Activate 4.打开指定工作簿 eole.Workbooks.Open(″c:\temp\ll.xls″) 5.显示Excel窗口 eole.visible=.t. 6.更改Excel标题栏 eole.Caption=″VFP应用程序调用Microsoft Excel″ 7.给单元格赋值 eole.cells(1,4).value=XM(XM为数据库字段名) 8.设置指定列的宽度(单位:字符个数) eole.ActiveSheet.Columns(1).ColumnWidth=5 9.设置指定行的高度(单位:磅) eole.ActiveSheet.Rows(1).RowHeight=1/0.035 (设定行高为1厘米,1磅=0.035厘米) 10.在第18行之前插入分页符 eole.Worksheets(″Sheet1″).Rows(18).PageBreak=1 11.在第4列之前删除分页符 eole.ActiveSheet.Columns(4).PageBreak=0 12.指定边框线宽度(Borders参数如下) ole.ActiveSheet.Range(″b3:d3″).Borders(2).Weight=3 13.设置四个边框线条的类型 eole.ActiveSheet.Range(″b3:d3″).Borders(2).LineStyle=1 (其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线) 14.设置页眉 eole.ActiveSheet.PageSetup.CenterHeader=″报表1″ 15.设置页脚 eole.ActiveSheet.PageSetup.CenterFooter=″第&P页″ 16.设置页眉到顶端边距为2厘米 eole.ActiveSheet.PageSetup.HeaderMargin=2/0.035 17.设置页脚到底边距为3厘米 eole.ActiveSheet.PageSetup.FooterMargin=3/0.035 18.设置顶边距为2厘米 eole.ActiveSheet.PageSetup.TopMargin=2/0.035 19.设置底边距为4厘米 eole.ActiveSheet.PageSetup.BottomMargin=4/0.035 20.设置左边距为2厘米 veole.ActiveSheet.PageSetup.LeftMargin=2/0.035 21.设置右边距为2厘米 eole.ActiveSheet.PageSetup.RightMargin=2/0.035 22.设置页面水平居中 eole.ActiveSheet.PageSetup.CenterHorizontally=.t. 23.设置页面垂直居中 eole.ActiveSheet.PageSetup.CenterVertically=.t. 24.设置页面纸张大小(1-窄行8511 39-宽行1411) eole.ActiveSheet.PageSetup.PaperSize=1 25.打印单元格网线 eole.ActiveSheet.PageSetup.PrintGridlines=.t. 26.拷贝整个工作表 eole.ActiveSheet.UsedRange.Copy 27.拷贝指定区域 eole.ActiveSheet.Range(″A1:E2″).Copy 28.粘贴 eole.WorkSheet(″Sheet2″).Range(″A1″).PasteSpecial 29.在第2行之前插入一行 eole.ActiveSheet.Rows(2).Insert 30.在第2列之前插入一列 eole.ActiveSheet.Columns(2).Insert 31.设置字体 eole.ActiveSheet.Cells(2,1).Font.Name=″黑体″ 32.设置字体大小 eole.ActiveSheet.Cells(1,1).Font.Size=25 33.设置字体为斜体 eole.ActiveSheet.Cells(1,1).Font.Italic=.t. 34.设置整列字体为粗体 eole.ActiveSheet.Columns(1).Font.Bold=.t. 35.清除单元格公式 eole.ActiveSheet.Cells(1,4).ClearContents 36.打印预览工作表 eole.ActiveSheet.PrintPreview 37.打印输出工作表 eole.ActiveSheet.PrintOut 38.工作表另为 eole.ActiveWorkbook.SaveAs(″c:\temp\22.xls″) 39.放弃存盘 eole.ActiveWorkbook.saved=.t. 40.关闭工作簿 eole.Workbooks.close 41.退出Excel eole.quit 大家好,我是菜鸟,帮我分析一下这是什么原因啊 VB程序员交流QQ群。群号:11804726 来者加分。现在只能加入五六十人了。要进的搞快 急啊,同志们 Access问题!达人进! VB6.0的问题帮解决!安装繁体字库后,乱码。添加窗体的默认forecolor被设置成了黑色如何改回来! 请教DATAGRID控件的使用?急用! Format函数,是我错了吗? 控件容器的引用 打开一个路径下的文件这样写对吗??? 把0显示成0.00怎么弄? 奇怪问题 问:调用PrintDialog(API函数)后,如何得到用户选择的是“打印全部”还是“打印选择区域”?
你看看◆访问EXCEL:ExcelSheet = GetObject('','Excel.Sheet')
返回结果为类,则成功。例:
ExcelSheet = GetObject('','Excel.Sheet')
If Type("ExcelSheet")#'O' THEN
=MessageBox( "访问Excel失败!请检查你的系统是否正确安装 Excel 软件!",48,"Excel不正常")
RETURN
ENDIF◆创建EXCEL实例:oExcel=CreateObject("Excel.Application")
该实例创建后,任何对EXCEL的操作都针对该实例进行,关闭EXCEL后应释放该实例变量:RELEASE oExcel◆打开已存在的EXCEL文件:oExcel.WorkBooks.Open("&lcFileName") &&lcFileName为Excel文件名
打开带有读写密码的文件:oExcel.WorkBooks.Open("&lcFileName",,.F.,,"&R_Pwd","&W_Pwd") &&lcFileName-文件名,R_Pwd-读密码,W_Pwd-写密码,第二个参数表示读写方式:.T.只读,.F.读写◆设置新增工作薄的工作表数:oExcel.SheetsInNewWorkbook=1 &&新建工作表数量定为1个◆新增EXCEL工作薄:oExcel.WorkBooks.Add◆当前工作薄工作表总数:oExcel.WorkSheets.Count &&如:lnSheetCnt=oExcel.WorkSheets.count◆新增EXCEL工作表:oExcel.Sheets.Add &&不带参数为增加至当前工作表之前
在指定工作表后新建工作表:oExcel.Sheets.Add(,oExcel.Sheets(lnSheet),1,-4167) &&lnSheet为指定表号
在最后工作表后新建工作表:oExcel.Sheets.Add(,lnSheetsCnt,1,-4167) &&lnSheetCnt为工作表总数◆激活工作表:oExcel.WorkSheets("Sheet1").Activate &&激活工作表1
删除工作表:oExcel.WorkSheets("Sheet2").Delete &&删除工作表2
命名工作表:oExcel.WorkSheets("Sheet3").Name="新表" &&重命名工作表3◆使EXCEL可视:oExcel.Vsible=.T.◆Excel的窗口控制:oExcel.WindowState = -4140 &&最小化=-4140,最大化=-4137,还原=-4143◆后台操作报警关闭:oExcel.DisplayAlerts=.F. &&关闭(.F.) 打开(.T.)◆设置工作薄的标题:oExcel.Caption="Vfp控制Excel操作"◆当前工作薄换名存盘:oExcel.ActiveWorkBook.SaveAs("&lcFileName")
换名存为文本文件:oExcel.ActiveWorkBook.Saveas("&lcFileName",-4158) ◆工作薄存盘:oExcel.WorkBooks.Save◆关闭工作薄:oExcel.WorkBooks.Close◆退出EXCEL:oExcel.Quit &&关闭EXCEL后通常应释放实例变量:Release oExcel◆打印当前工作簿:oExcel.ActiveWorkBook.PrintOut(1,oExcel.WorkSheets.count,1,.T.)
*默认直接打印整个工作簿:oExcel.ActiveWorkBook.PrintOut()
*参数1-数值:当前工作簿中进行打印的起始工作表号(默认1)
*参数2-数值:当前工作簿中进行打印的结束工作表号(默认最末)
*参数3-数值:打印份数(默认1)
*参数4-是预览打印还是直接打印:.T.-预览打印,.F.-直接打印(默认.F.)◆打印当前工作表:oExcel.ActiveSheet.PrintOut() &&共八个参数
*参数1-数值:起始页号,省略则默认为开始位置
*参数2-数值:终止页号,省略则默认为最后一页
*参数3-数值:打印份数,省略则默认为1份
*参数4-逻辑值:是否预览,省略则默认为直接打印(.F.)
*参数5-字符值:设置活动打印机名称,省略则为默认打印机
*参数6-逻辑值:是否输出到文件,省略则默认为否(.F.),若选.T.且参数8为空,则Excel提示输入要输出的文件名
*参数7-逻辑值:输出类型,省略则默认为(.T.)逐份打印,否则逐页打印
*参数8-字符值:当参数6为.T.时,设置要打印到的文件名◆预览当前工作表:oExcel.ActiveSheet.PrintPreview◆当前工作表页面设置:oExcel.ActiveSheet.PageSetup &&如:
With oExcel.ActiveSheet.PageSetup
.CenterFooter="第"+"&P"+"页 共"+"&N"+"页" &&页脚中间
.LeftFooter="制表人:"+AllTrim(lcUserName) &&页脚左边
.rightfooter="制表日期:"+Dtoc(Date()) &&页脚右边
.TopMargin=2.5/0.035 &&顶边距
.BottomMargin=2.5/0.035 &&底边距
.LeftMargin=1.4/0.035 &&左边距
.RightMargin=0.5/0.035 &&右边距
.FooterMargin=3.5/0.035 &&脚高距
.PrintTitleRows = "$1:$3" &&固定打印的顶端标题行(第1-3行)
.Orientation = 1 &&打印方向: 1为纵向,2为横向
.PaperSize=9 &&纸张类型: A4(注意:不同打印机与版本可能有不同)
.PrintQuality = 180 &&打印精度
EndWith◆从包含大量内含公式的EXCEL文件导至DBF中时,直接转换会出现致命错误,这时可选择将EXCEL另存为文本文件再导至DBF中可保数据不丢失:
oExcel.WorkBooks.Open('D:\123.xls')
oExcel.ActiveWorkBook.Saveas('D:\123.txt',-4158 ) &&注意参数-4158不能错◆若判断EXCEL或某个XLS文件是否已经打开(避免不可预知的错误发生):
LOCAL lOldSetOpt,mChanNum
lOldSetOpt = DDESetOption("SAFETY")
= DDESetOption("SAFETY",.F.)
mChanNum = DDEInitiate('Excel','SYSTEM') &&EXCEL是否已经打开
**mChanNum = DDEInitiate('Excel','&lcFileName') &&lcFileName某XLS文件名,如:D:\123.XLS
IF mChanNum <> -1
= messagebox('程序 EXCEL 已经打开,请先将其关闭!',64,'系统提示!')
** = messagebox('文件 '+lcFileName+' 已经打开,请先将其关闭!',64,'系统提示!')
= DDETerminate(mChanNum)
= DDESetOption("SAFETY",lOldSetOpt)
RETURN
ENDIF