你的想法比较好,这样做报表格式修改可以完全由用户来做,灵活。数据的传递可以用 TExcelApplication 控件打开 Excel 服务,直接填写 Sheet 中的 Cell 即可。

解决方案 »

  1.   

    我才做个一个word下用户自定义文档的程序。
    用户可以自己定义一个word的模板文档。
    要输出的内容用特定的符号表示。
    程序执行时用OLE方式让word替换就行。如果你的数据库是固定格式的,就可以用这种方式了
      

  2.   

    看来大家的方法差不多,lj_csdn(大笨蛋) 的方法能否再说得具体一点:
    是否你的程序需要读word模板(由用户来告诉你的程序模板文件名)?
    之后程序是否要扫描文档中的特定符号?
    特定符号是否比较复杂,比如要规定用那个表中的那个字段,甚至是更复杂的查询,可以做到吗?
    “让word替换”是什么意思?
      

  3.   

    先把模板复制一份 CopyFile
    OLE方式让word打开指定的文档,让word替换,比如:doc中有 <NAME>
        让word替换 replace("<NAME>","大笨蛋");excel你可以先对模板的第一行复制,
        搜索数据库,替换,再粘贴一行,再搜索,再替换,再粘贴这样程序就比较统一,选择列等都在程序里了
      

  4.   

    我也在想搞一个这样的程序,不仅是模板中数据位置由用户定义,而且需要把这一结果存入数据表,例如用户定义A3为'姓名'A4为由其他用户填写的姓名值,则要把A3的'姓名'存为表字段名,而A4的值存为'姓名'字段的字段值,请各位帮帮忙.谢谢了!!!!
      

  5.   

    在作信息系统中经常要作报表,用excel是很方便。关键是不仅数据的位置要能用户定义,数据的含义也要能定义。而且报表本身也需要参数,比如是要哪个月的报表。难啊!哪位能对我的解决方法1中的缺点提供解决思路?
      

  6.   

    delphi 自带的事例中   ole 方面的有
      

  7.   

    关于查询值的问题,可建立临时表解决;
    关于报表参数的问题,可在建立报表前有用户输入变量值,或从注册表\ini文件中读取;
      

  8.   

    可以利用excel的单元格的脚注实现确认单元格内的值.
    在做好的模板中的不同单元格设定好脚注.在数据库中建立一个表
    其中一个字段与脚注一致,另一个字段包含实现这个单元格值的查询语句.
    然后通过ole技术发送到生成的excl文件中.
    但是单个数据可以,要是"混合"(指单个格和多个格的值)确定值我还没有实现.
      

  9.   

    "脚注法"实现确定单元格.
    生成的excl文件模板每个单元格可以建立不同的脚注
    然后建立表保存脚注内容在一个字段中.另一个字段保存确定这个脚注单元格值的数据库查询语句.注意表中要有唯一限定.
      

  10.   

    帮忙看一下这两个帖子好吗?
    http://www.csdn.net/expert/topic/854/854793.xml?temp=.969784
    http://www.csdn.net/expert/topic/854/854793.xml?temp=.9821131
      

  11.   

    "脚注法"实现确定单元格.
    生成的excl文件模板每个单元格可以建立不同的脚注
    然后建立表保存脚注内容在一个字段中.另一个字段保存确定这个脚注单元格值的数据库查询语句.注意表中要有唯一限定.
      

  12.   

    其实调用excel的技术不是问题,看来VBA还是目前比较合适的办法。
      

  13.   


    完全使用VBA在excel文件中作宏,保存为模板。
    优点:与其他程序无关,较为灵活,可根据用户需求的变化不断增加或修改excel模板。
    缺点:用户可以轻易看到宏中的代码,包括数据库连接的密码等。
    --------------------------------
    可以提高工程保护的方法加密码以防止用户看到代码。这样不就行了。
    VBA是最好的方法!