Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
flexcel for Delphi 2007新版本中需要帮助_Delphi_Excel_Delphi 2007_Tms - Fatal编程技术网

flexcel for Delphi 2007新版本中需要帮助

flexcel for Delphi 2007新版本中需要帮助,delphi,excel,delphi-2007,tms,Delphi,Excel,Delphi 2007,Tms,我正在使用flexcel组件从Delphi2007生成Excel文件。现在我们切换到此组件的最新版本,因为旧版本与Excel 2010不兼容 现在,当我们将每个单元格的格式设置为不同的值时,我面临一个问题。正在生成一个文件,但所有单元格都具有默认格式 下面是演示此行为的代码段: var V: TXlsCellValue; begin with V do begin Value := S; //text XF := Fmt; //format IsFormul

我正在使用flexcel组件从Delphi2007生成Excel文件。现在我们切换到此组件的最新版本,因为旧版本与Excel 2010不兼容

现在,当我们将每个单元格的格式设置为不同的值时,我面临一个问题。正在生成一个文件,但所有单元格都具有默认格式

下面是演示此行为的代码段:

var
  V: TXlsCellValue;
begin
  with V do
  begin
    Value := S; //text
    XF := Fmt;  //format
    IsFormula := false;
  end;
  FXls.AssignCellDataX(Succ(Row), C, V);  // FXls : TXLSFile; 
end;

这是我能够找到的解决方案之一。在这里,我们需要创建自己的定制格式

Fmt: TFlxFormat;
GetDefaultFormat(Fmt); // used to get the default format of a blank cell 
下面是将格式添加到此组件的格式列表的函数

Fmt.Font.Size20 := 240;
Rmt.WrapText := True;
tempXF:= FlexCelImport1.AddFormat(Fmt);
此AddFormat函数将返回一个表示新创建的格式编号的整数值。在此,我们可以使用这个tempXF编号来格式化单元格

以下是工作片段:

var
    V: TXlsCellValue;
begin
    with V do
    begin
        Value := S; // text to be inserted
        XF := tempXF; // newly created format
        IsFormula := FALSE;
    end;
    FXls.AssignCellDataX(Succ(Row), Col, V); // FXls : TXLSFile; 
End;

任何有更好方法的人都会受到赞赏

是的,但没有得到令人满意的答案。EXCEL中有任何预定义的格式吗?我对Flexcel一无所知,我很惊讶TMS不会帮助您。XF:=FlexCelImport1.AddFormatFmt;我在TMS网站上找到了这条线路。让我看看这是否有帮助。