云 云虎 Unregistered / Unconfirmed GUEST, unregistred user! 2009-12-28 #1 在Delphi2009中利用Excel:= CreateOLEObject('Excel.Application');动态使用Excel文件,但是通过Excel.ActiveSheet.Range('A1')的形式引用单元格却总是出错,提示没有成员名,但是在Excel的VBA环境中却可以。请各位大侠不吝赐教。谢谢!
在Delphi2009中利用Excel:= CreateOLEObject('Excel.Application');动态使用Excel文件,但是通过Excel.ActiveSheet.Range('A1')的形式引用单元格却总是出错,提示没有成员名,但是在Excel的VBA环境中却可以。请各位大侠不吝赐教。谢谢!
Z zjan521 Unregistered / Unconfirmed GUEST, unregistred user! 2009-12-28 #2 请参考 自带的关于 OFFICE 访问的例子. 我没有记错的话, 好像需要使用 OleVariant 类型的参数, 并且需要手动做, 而且也不能自动补缺省参数.
云 云虎 Unregistered / Unconfirmed GUEST, unregistred user! 2009-12-28 #3 谢谢zjan521兄。Excel就是定义为oleVariant类型。
S schgq Unregistered / Unconfirmed GUEST, unregistred user! 2009-12-28 #4 试试如下格式看看 // 字体 // MyWorkbook.worksheets[1].Range['A1:A12'].Font.Name:='宋体'; // 字体颜色 // MyWorkbook.worksheets[1].Range['A1:A12'].Font.Color:=clBlack; // MyWorkBook.WorkSheets[1].Cells[1,1].Value := '统计表';
试试如下格式看看 // 字体 // MyWorkbook.worksheets[1].Range['A1:A12'].Font.Name:='宋体'; // 字体颜色 // MyWorkbook.worksheets[1].Range['A1:A12'].Font.Color:=clBlack; // MyWorkBook.WorkSheets[1].Cells[1,1].Value := '统计表';
S stlont Unregistered / Unconfirmed GUEST, unregistred user! 2009-12-28 #5 使用以下格式引用:Excel.ActiveSheet.cells[1.1].value注意在VBA中的语法与Delphi不同,需要改写,( )改为[ ]value对应variant,可自动转换对应变量类型,但在某些情况下, 也需要指定并自行处理文本或数值等类型
使用以下格式引用:Excel.ActiveSheet.cells[1.1].value注意在VBA中的语法与Delphi不同,需要改写,( )改为[ ]value对应variant,可自动转换对应变量类型,但在某些情况下, 也需要指定并自行处理文本或数值等类型