我有 sql 脚本“example.sql”:SPOOL &1 Select '<.TR>'||'<.TD align="left">'||column_name||'<./TD>'||'<.TR>' from table1; spool off..
它将其内容转储到 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 文件,其中包含查询结果和 trail.html <./tr>
<./table>
<./body>
<./html>
,我将此文件保存为 .xls 并通过电子邮件作为附件发送。现在我的问题是 Column_name 的数据以 0 开头,但是当我打开 excel 文件时,前导 0 消失了,但是我想保留那个 0 .. 那么我可以添加什么来确保电子邮件附加的 excel 文件在另一侧打开时将具有前导 0 .. 请任何帮助都会很好
问问题
1167 次
4 回答
0
我过去处理过这个问题,这个问题严格来说是 Excel 格式的一个“特性”。不幸的是,我没有资源来完全测试答案,但是您可以尝试以下两件事。
- 在你的 cshell 脚本中添加一个步骤,用 ="" 包围你的 $1 值,
awk '{$1= "=\"" $1 "\""; 打印 $0}' inFile > outFile
缺点是您现在告诉 Excel 将这些值视为字符串。如果您对这些值进行任何花哨的计算,您可能会遇到不同的问题。
- #2(为什么 SO 格式总是将编号的块重新编号为 1 !;-!)。由于这确实是一个 Excel 格式问题,并且在我的回忆中,一旦打开并处理了文件,您就无法检索前导零,我似乎记得我有一个预先格式化黑色工作表的技巧,将其保存为模板,然后将文件加载到模板中。我记得这也很棘手,所以不要指望它会起作用。如果上面的 #1 不起作用,您可能需要咨询 Excel 用户以了解最佳策略。
如果您向他们寻求帮助,您可能还想告诉人们您使用的是哪个版本的 Excel。
我希望这有帮助。
PS,因为您似乎是新用户,如果您得到对您有帮助的答案,请记住将其标记为已接受,和/或给它一个 +(或 -)作为有用的答案
于 2011-03-29T22:05:30.293 回答
0
使用甲骨文:
假设您的属性称为“数字”
select '0' || to_char(number) as number
from table mytable
于 2011-03-29T18:37:08.947 回答
0
使用 excel 对象模型或宏进入 excel 文件抓取列并更改格式。
在你的情况下:
Range("A1").Numberformat = "@"
于 2011-03-29T18:37:57.653 回答
0
如果您正在动态生成 excel 文件,您可以在这些数字前面加上撇号,即 '
这会导致 Excel 将数字视为字符串。唯一的缺点是,如果工作表有任何使用这些数字的方程,它可能会导致一些副作用。
于 2011-03-29T18:38:15.267 回答