Delphi5 控制 Excel2000 心得(0分)

  • 主题发起人 sandy suen
  • 开始时间
怎樣控制excel不被打印,只能查看?
 

有word的记得给我一份吧
谢谢阿
 
学习ing......
 
我做了一个word的
 

FExcel: Variant;
FWorkBook: Variant;
FWorkSheet: Variant;

FExcel := CreateOLEObject('Excel.Application');
FWorkBook := FExcel.WorkBooks.Add;
FWorkSheet := FWorkBook.WorkSheets.Add;
最后用
FExcel.WorkBooks.Close;
FExcel.Quit;
来退出。
我的环境是WINDOWS 2000 SERVER
为什么在我做的程序成功导出EXCEL表后,在程序还没有退出的情况下打开导出的EXCEL表不能看到里面的内容,而只有标题栏呢?我尝试过用FExcel := Unassigned;但操作系统就会提示发生错误,什么“该内存不能read”的错误提示!我看了windows下的进程,EXCEL是没有从内存退出来的,请问如何做才能在程序导出EXCEL后,可以不退出程序,直接打开导出的EXCEL表进行浏览或其他操作呢?
 
已经在
http://www.djpate.freeserve.co.uk/ExcelPrbs.htm#HiddenClientarea
找到了答案!
FExcel:=unAssigned;
FWorkBook:=unAssigned;
FWorkSheet:unAssigned;
其实上面都有很多位朋友提到了,只是刚才不是很明白,现在明白了,呵呵,谢谢各位!
 
还有个问题不明白:
var a : variant;
begin
a :=createoleObject("application.Excel");
...
end;
竟然提示说“没有调用coInitialize”,请问这是什么意思呢?如何解决?(windows 2000server环境)
 
横向、纵向的打印是如何设定?
还有就是网格线的粗、细如何设定?
 
什么时候推出动态创建word的使用方法啊?我急用。先来一点也好啊。
最好有文件内容的查找,选定,定位,插入,copy的操作。
 
to ebxca:你使用ole方法控制excel,然后在excel中录制宏,在编辑录制好的宏,看看vb语句是如何控制的,将这些语句稍做修改就可以了。举一个例子如下:
VB语句:
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = xlAutomatic
End With
改成
 
DELPHI语句:
ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[xlEdgeLeft].LineStyle:= xlContinuous;
ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[xlEdgeLeft].Weight := xlMedium;
ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[xlEdgeLeft].ColorIndex := xlAutomatic;
 
谢谢lippo,还想问一下,假设表中有5行5列,如我把第五列的第2到4行合并了,
然后想在那插入一个图,如bmp文件等,具体代码怎样写?
还有,如把数据库中的记录写入execl中,是否真的很慢,谁有这方面的经验?
以1000条讥录,10个 字段计算.
 
宏中的代码是这样的,哪个delphi高手帮忙译成是delphi语言的:

ActiveSheet.Pictures.Insert( _
"C:/Documents and Settings/All Users/Documents/My Pictures/示例图片/Blue hills.jpg" _
).Select
Selection.ShapeRange.IncrementTop 13.5
Selection.ShapeRange.IncrementLeft 0.75
Selection.ShapeRange.IncrementTop 2.25
Selection.ShapeRange.IncrementTop -2.25
 
以上是excel中从文件中插入图片的代码,但我想要的是把delphi程序中img控件中
的bmp文件插入到excel表指定的位置中的但码,该如何写呢?
 
在前人的基础上改了一下,行了.

var
aSheet: variant;
MyFormat : Word;
AData : THandle;
APalette:HPALETTE;

aSheet := ExcelApplication1.Worksheets.Item[1];
//将Image1的图像插入
Image1.picture.SaveToClipboardFormat(MyFormat,AData,APalette);
ClipBoard.SetAsHandle(MyFormat,AData);
aSheet.Range['d5'].PasteSpecial; //从d5栏开始粘贴


记住,uses子句中要加上:Clipbrd
 
那位知道kylix的cdkey
 
把图片缩小的vba语句是这样的,哪位大侠能译成delphi的???
ActiveSheet.Shapes("Picture 1").Select
Selection.ShapeRange.ScaleWidth 0.83, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 0.95, msoFalse, msoScaleFromTopLeft
 
把图片缩小的vba语句是这样的,哪位大侠能译成delphi的???
ActiveSheet.Shapes("Picture 1").Select
Selection.ShapeRange.ScaleWidth 0.83, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 0.95, msoFalse, msoScaleFromTopLeft
 
控件ExcelChart用什么方法可以获取当前表中图表的各项参数?
请各位赐教,并出更多的分!
 
顶部