Sql脚本在excel输出文件中显示前导0

我有sql脚本“example.sql”:
SPOOL &1 Select '<.TR>'||'<.TD align="left">'||column_name||'<./TD>'||'<.TR>' from table1; spool off..
which将其内容转储到cshell脚本“getdata.csh”这是我如何从sql脚本获取数据到csh脚本
sqlplus $ORA_UID/$ORA_PSWD @${SQL}example.sql ${DATA}${ext}
一旦我从中提取数据我通过组合3个文件创建一个excel文件头。 html
<html>
<.head>
<.title)
Title
<./title>
<./head>
<.body>
<.table >
<.tr>
<.th>Column Name<./th>
<.tr>
ext文件,其中包含查询结果和trailer.html
<./tr>
<./table>
<./body>
<./html>
,我将此文件另存为.xls并通过电子邮件将其作为附件发送。现在我的问题是Column_name的数据以0开头,但是当我打开excel文件时,前导0已经消失但我想保留0 ..所以我可以添加什么来确保电子邮件附加的excel文件将在前面打开另一边的前导0 .. PLZ任何帮助都会很好     
已邀请:
使用oracle: 假设您的属性称为“数字”
select '0' || to_char(number) as number
from table mytable
    
使用excel对象模型或宏进入excel文件抓取列并更改格式。 在你的情况下:
Range("A1").Numberformat = "@"
    
如果您正在动态生成excel文件,则可以在撇号前加上这些数字,即' 这会导致Excel将数字视为字符串。唯一的缺点是如果工作表有任何使用这些数字的方程式,它可能会导致一些副作用。     
我以前处理过这个问题,问题严格来说就是Excel格式的“功能”。不幸的是,我没有足够的资源来完全测试答案,但这里有两件事你可以试试。 在cshell脚本中添加一个步骤,用$“”包围$ 1值, awk'{$ 1 =“= ”“$ 1”“”; print $ 0}'inFile> outFile 缺点是你现在告诉Excel将这些值视为字符串。如果您对这些值进行任何花哨的计算,您可能会遇到不同的问题。 #2(为什么SO格式化总是将编号的块重新编号为1!; - !)。由于这实际上是一个Excel格式问题而且在我的回忆中,一旦文件被打开和处理,你无法检索前导零,我似乎记得我有一个预先格式化黑色工作表的技巧,将其保存为模板,然后将文件加载到模板中。我记得那也很棘手,所以不要指望它能奏效。如果上面的#1不起作用,您可能需要咨询Excel用户的最佳策略。 如果您向他们寻求帮助,您可能还想告诉人们您正在使用的Excel版本。 我希望这有帮助。 附:因为你似乎是一个新用户,如果你得到一个帮助你的答案,请记住将其标记为已接受,和/或给它一个+(或 - )作为一个有用的答案     

要回复问题请先登录注册