VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx

上传人:b****2 文档编号:3200078 上传时间:2023-05-01 格式:DOCX 页数:25 大小:33.58KB
下载 相关 举报
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第1页
第1页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第2页
第2页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第3页
第3页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第4页
第4页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第5页
第5页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第6页
第6页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第7页
第7页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第8页
第8页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第9页
第9页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第10页
第10页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第11页
第11页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第12页
第12页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第13页
第13页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第14页
第14页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第15页
第15页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第16页
第16页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第17页
第17页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第18页
第18页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第19页
第19页 / 共25页
VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx

《VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx》由会员分享,可在线阅读,更多相关《VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx(25页珍藏版)》请在冰点文库上搜索。

VFP与Excel都可以用来进行处理数据库表格Word文档格式.docx

).BorderS

(2).Weight=3

*13.设置四个边框线条的类型oExcel.ActiveSheet.Range("

).BorderS

(2).LineStyle=1

(其中Borders参数:

1-左、2-右、3-顶、4-底、5-斜、6-斜/;

LineStyle值:

1与7-细实、2-细虚、4-点虚、9-双细实线)

*14.设置页眉oExcel.ActiveSheet.PageSetup.CenterHeader="

报表1"

*15.设置页眉(字体大小)oExcel.ActiveSheet.PageSetup.CenterHeader="

50报表1"

'

后面的50可以自定义,表示字体的大小

*16.设置页脚oExcel.ActiveSheet.PageSetup.CenterFooter="

第&

P页"

*17.设置页脚(字体大小)oExcel.ActiveSheet.PageSetup.CenterFooter="

28第&

后面的28可以自定义,表示字体的大小

*18.设置页眉到顶端边距为2厘MoExcel.ActiveSheet.PageSetup.HeaderMargin=2/0.035

*19.设置页脚到底边距为3厘MoExcel.ActiveSheet.PageSetup.FooterMargin=3/0.035

*20.设置顶边距为2厘MoExcel.ActiveSheet.PageSetup.TopMargin=2/0.035

*21.设置底边距为4厘MoExcel.ActiveSheet.PageSetup.BottomMargin=4/0.035

*22.设置左边距为2厘MoExcel.ActiveSheet.PageSetup.LeftMargin=2/0.035

*23.设置右边距为2厘MoExcel.ActiveSheet.PageSetup.RightMargin=2/0.035

*24.设置页面水平居中oExcel.ActiveSheet.PageSetup.CenterHorizontally=.T.

*25.设置页面垂直居中oExcel.ActiveSheet.PageSetup.CenterVertically=.T.

*26.设置页面纸张大小(1-窄行851139-宽行14119:

A4)oExcel.ActiveSheet.PageSetup.Papersize=1

*27.打印单元格网线oExcel.ActiveSheet.PageSetup.PrintGridlines=.T.

*28.拷贝整个工作表oExcel.ActiveSheet.UsedRange.Copy

*29.拷贝指定区域oExcel.ActiveSheet.Range("

A1:

E2"

).Copy

*30.粘贴oExcel.WorkSheet("

Sheet2"

).Range("

A1"

).PasteSpecial

*31.在第2行之前插入一行oExcel.ActiveSheet.Rows

(2).Insert

*32.在第2列之前插入一列oExcel.ActiveSheet.Columns

(2).Insert

*33.设置字体oExcel.ActiveSheet.Cells(2,1).Font.Name="

黑体"

*34.设置字体大小oExcel.ActiveSheet.Cells(1,1).Font.Size=25

*35.设置字体为斜体oExcel.ActiveSheet.Cells(1,1).Font.Italic=.T.

*36.设置整列字体为粗体oExcel.ActiveSheet.Columns

(1).Font.Bold=.T.

*37.清除单元格公式oExcel.ActiveSheet.Cells(1,4).ClearContents

*38.打印预览工作表oExcel.ActiveSheet.PrintPreview

*39.打印输出工作表oExcel.ActiveSheet.PrintOut

*40.oExcel.CommandBars

(1).Controls

(1).accChild(18).Execute&

打印(菜单序号18为Excel2003的‘打印’项)

不同版本Excel的菜单序号可以通过以下程序取得

*(需要在VFP7.0以上运行)oXls=Getobject("

"

"

excel.sheet"

XlApp=oXLS.ApplicationXlSheet=XlApp.ActiveSheet

bars=xlapp.CommandBars.CountStr1='

For 

i=1 

To 

bars

Str1=Str1+Chr(13)+Alltrim(Str(i))+'

、'

+xlapp.CommandBars(i).accName+'

(NAME:

+xlapp.CommandBars(i).Name+'

INDEX:

+Alltrim(Str(xlapp.CommandBars(i).Index))+'

)'

bars2=mandbars(i).accChildCount

j=1 

bars2

Try

obj=mandbars(i).Controls(j) 

Str1=Str1+Chr(13)+'

'

+Alltrim(Str(j))+'

+mandbars(i).Controls(j).accname+'

(ID:

+Alltrim(Str(xlapp.CommandBars(i).Controls(j).Id))+'

k=1 

obj.accChildCount

If 

Not 

Empty(obj.Controls(k).accname)

+Alltrim(Str(k))+'

+obj.Controls(k).accName+'

(ID:

Alltrim(Str(obj.Controls(k).Id))+'

Endif

Catch

Exit

Endtry

Endfor

WaitWindowsAlltrim(Str(i))+'

/'

+Alltrim(Str(bars))+'

+Str(i/bars*100,10,2)+'

%'

Nowait

Endfor

SaveToXls.txt 

AllLike 

Str1ModifyCommandXls.txtReturn

*41.工作表另存为oExcel.ActiveWorkbook.SaveAs("

/temp/22.xls"

)*检测当前目录是否有同名的EXCEL表,如果有先删除,再另存If 

!

File(Sys(5)+ 

Curdir()+"

result.xls"

oExcel.ActiveWorkbook.SaveAs(Sys(5)+ 

)Else

lcFileName=loExcel.GetSaveAsFilename("

result"

"

Excel(*.xls),*.xls"

If 

Empty(lcFileName)

IfFile(lcFileName)

DeleteFile 

(lcFileName) 

oExcel.ActiveWorkbook.SaveAs(lcFileName)

Endif*!

*42.放弃存盘&

避免出现保存对话框oExcel.ActiveWorkbook.saved=.T.

*43.存盘oExcel.ActiveWorkbook.Save

*44.关闭工作簿oExcel.Workbooks.Closeobjexcel.activeworkbook.Close(.F.)

*45.退出ExceloExcel.QuitRelease 

oExcel 

只有释放对象变量,EXCEL进程才会完全关闭

*46.合并单元格oExcel.ActiveSheet.Range("

A4:

B5"

).MergeCells=.T.

*47.下列设置大家自己理解With 

crfole.ActiveSheet.PageSetup

.LeftHeader= 

Chr(13)+"

左页眉"

.CenterHeader="

中页眉"

.RightHeader="

右页眉"

.LeftFooter="

左页脚"

.CenterFooter="

中页脚"

.RightFooter="

右页脚"

.Orientation=1 

1竖排,2横排Endwith

With 

crfole.Range("

C4"

) 

.MergeCells=.T.

.WrapText=.F.

.Orientation=0

.AddIndent=.F.

.ShrinkToFit=.F.Endwith

*48.文本对齐oExcel.Range("

c4"

).HorizontalAlignment=1 

水平(1-默认、2-靠左、3-居中、4-靠右、5-填充、6=两端对齐、7=跨列居中、8=分散对齐)oExcel.Range("

).VerticalAlignment=2 

垂直(1=靠上、2=居中、3=靠下、4=两端对齐、5=分散对齐)

*49.拷贝整个工作表(含格式)oExcel.activesheet.cells.Copy 

拷贝oExcel.sheets

(1).Select 

选择第一工作表oExcel.ActiveSheet.Paste 

粘贴oExcel.ActiveSheet.Cells(3,4).Value 

ActiveSheet为当前的Sheet工作薄名字,Cells(3,4).value为第3行第4列的值

*以上控制调用语句在中文VFP5.0企业版下运行通过,运行环境为Excel97及中文Windows98

*50.显示某个单元格的批注内容oExcel=Createobject("

oExcel.Workbooks.Open("

d:

/TEST/testa.xls"

oExcel.Visible=.T.

?

oExcel.Range("

).Comment.Text 

显示B5单元格的批注内容oExcel.Workbooks.CloseoExcel.QuitRelease 

oExcel

*51.oExcel.ActiveSheet.PageSetup.PrintTitleRows="

$1:

$1"

&

每页都打印行标头(每页顶部出现的单元格的行)

*52.保护工作表:

oExcel.ActiveSheet.Protect('

密码'

.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.,.T.)

*53.保护工作薄oExcel.ActiveWorkbook.Protect('

.T.,.T.)

第一个.T.:

保护工作簿结构

第二个.T.:

保护工作簿窗口

*54.设置允许用户编辑区域oExcel.ActiveSheet.Protection.AllowEditRanges.Add("

区域3"

oExcel.ActiveSheet.Range("

A2:

D5"

))

*55.如果不想在宏运行时被无穷无尽的提示和警告消息所困扰,就将本属性设置为.F.oExcel.DisplayAlerts=.F.

如果不想在宏运行时被无穷无尽的提示和警告消息所困扰,就将本属性设置为False;

这样每次出现需用户应答的消息时,MicrosoftExcel将选择默认应答。

如果将本属性设置为False,那么宏运行结束后,MicrosoftExcel并不自动将其设置回True。

故当宏运行结束后,都应将本属性设置回True值。

*56.将当前工作表中的已用区域(只读)存入数组。

strPath='

D:

/TEST/123.xls'

Local 

oExcel=Createobject("

Excel.Application"

oExcel.WorkBooks.Open(strPath)

arrTableInfo=oExcel.ActiveSheet.UsedRange.Value 

将当前工作表中的已用区域(只读)存入数组。

oExcel.QuitRelease 

oExcelInsertInto 

表名 

From 

arrTableInfo

*57.设置excel批注的字体(excel2000实现了,如下:

)ole.Range("

a3"

).Comment.Shape.Select 

此命令要求批注的Visible=.t.ole.Selection.Font.Size=9

ole.Selection.Font.Name="

ole.Selection.Font.bold=.F.

注:

该组命令要求先选中批注框,否则写成ole.Range("

).Comment.Shape.Font.Size=9则出错,不知为何!

*58.如何取得当前EXCEL表中工作表的数目及各工作表的名称?

Clear

lnSheetCount

EXCEL.APPLICATION"

创建Excel对象oExcel.WORKBOOKS.Open("

/111/321.xls"

打开指定工作簿With 

lnSheetCount=.WorkBooks

(1).Sheets.Count 

统计工作表数量Endwith?

当前EXCEL表中工作表的数目为:

+Alltrim(Str(lnSheetCount))ForEach 

oMyVar 

In 

oExcel.sheets

?

当前EXCEL表中工作表的名称分别为'

+oMyVar.Name 

显示Excel表中所有工作表Next 

oMyVar

oExcel.WORKBOOKS.Close 

关闭工作簿oExcel.Quit 

退出Excel

*59.获取工作表名称在以下示例中,创建了一个microsoftexcel实例,添加了一个新的工作簿。

使用foreach语句显示工作簿中每个工作表的名称。

此示例要求在运行示例的机器上正确安装microsoftexcel。

oExcel= 

Create("

oExcel.Workbooks.Add

ForEach 

oMyVar.NameNext 

*60.虽然用APPENDFromtx.XlsTypeXL8可以更简单的追加数据,但有时会导致程序非法错误退出(除非先另存为Excel5.0)

*61.VFP控制EXCL文件另存为DBF(EXCEL后台运行)fil=Thisform.List1.Value 

其值为一个包含路径的文件名oExcel=Createobject('

Excel.application'

oExcel.Workbooks.Open(fil) 

打开文件oExcel.Selection.AutoFilter 

关闭(如果无则打开)自动筛选oExcel.Range("

F1000"

).Select 

选中从第1行到1000行的前6列数据(另存后只有这些数据)asfil=Strtran(Upper(Strtran(fil,Substr(fil,1,Rat('

/'

fil)),'

/windows/desktop/cphz/'

)),'

.XLS'

'

.dbf'

)&

要保存的文件名IfFile(asfil) 

DeleteFile 

asfilEndifoExcel.ActiveWorkbook.SaveAs(asfil,8) 

另存为DBFoExcel.ActiveWorkbook.saved=.T. 

不保存当前EXCEL表oExcel.Workbooks.Close 

关闭表oExcel.Quit 

退出EXCELRelease 

释放变量

*************VFP中例子******************lcFileName='

/TEST.XLS'

oExcel=Createobject('

oExcel.Workbooks.Open('

lcFileName'

打开文件R=oExcel.SHEETS

(1).UsedRange.Rows.Count 

有数据的总行数C=oExcel.SHEETS

(1).UsedRange.Columns.Count 

有数据的总列数oExcel.Cells(R,C).Select 

选中数据oExcel.Selection.NumberFormatLocal="

@"

把被选定的单元格设为文本格式oExcel.Columns.AutoFit 

让所有的列宽都自动调整oExcel.DisplayAlerts=.F.

oExcel.ActiveWorkbook.SaveAs('

/TEST.DBF'

8) 

另存为DBF

*oExcel.ActiveWorkbook.SaveAs('

/NewTest.xls'

39)&

另存为5.0的Excel,或用43表示95/97格式oExcel.ActiveWorkbook.saved=.T. 

释放变量Messagebox('

Excel文件:

/TEST.XLS另存为D:

/TEST.DBF完成!

64,'

信息提示'

)***********VB例子*************

功能:

VB调用Excel,将一个Excel文件另存为Dbf。

前提:

要安装Excel'

DimoExcel 

AsObjectlcSFileName="

/test.xls"

源Excel文件名

lcDFileName="

/test1.dbf"

目标Dbf文件名Set 

Createobject("

创建Excel对象

oExcel.Workbooks.Open 

(lcSFileName) 

打开Excel表*R=oExcel.SHEETS

(1).UsedRange.ROWS.Count'

有数据的总行数

*C=oExcel.SHEETS

(1).UsedRange.Columns.Count'

有数据的总列数

*oExcel.Cells(R,C).Select'

选中数据

*oExcel.Columns.AutoFit'

让所有的列宽都自动调整oExcel.DisplayAlerts=Flase 

不显示提示框

oExcel.ActiveWorkbook.SaveAs 

FileName:

=lcDFileName,FileFormat:

=8

oExcel.ActiveWorkbook.saved=Ture 

不保存当前EXCEL表

oExcel.Workbooks.Close 

关闭表

oExcel.Quit 

退出EXCELSet 

oExcel=Nothing 

释放对象

MsgBox("

"

lcSFileName&

另存为"

lcDFi

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2