SQLスクリプト「example.sql」があります。SPOOL &1 Select '<.TR>'||'<.TD align="left">'||column_name||'<./TD>'||'<.TR>' from table1; spool off..
内容をcshellスクリプト「getdata.csh」にダンプします。これは、データをsqlplus $ORA_UID/$ORA_PSWD @${SQL}example.sql ${DATA}${ext}
抽出したらSQLスクリプトからcshスクリプトにデータを取得する方法です。3つのファイルヘッダーを組み合わせてExcelファイルを作成します. クエリ結果と Trailer.html を含むhtml <html>
<.head>
<.title)
Title
<./title>
<./head>
<.body>
<.table >
<.tr>
<.th>Column Name<./th>
<.tr>
ext ファイルを作成し<./tr>
<./table>
<./body>
<./html>
、このファイルを .xls として保存し、添付ファイルとして電子メールで送信します。今、私の問題は、Column_name に 0 で始まるデータがありますが、Excel ファイルを開くと、先頭に 0 はありませんが、私はその0を保持したい..それで、メールに添付されたExcelファイルが反対側で開かれたときに先頭が0になるようにするには、何を追加できますか..何か助けてください
4 に答える
オラクルの使用:
あなたの属性が「番号」と呼ばれているとしましょう
select '0' || to_char(number) as number
from table mytable
Excel オブジェクト モデルまたはマクロを使用して Excel ファイルに入り、列を取得して書式設定を変更します。
あなたの場合:
Range("A1").Numberformat = "@"
その場で Excel ファイルを生成している場合は、これらの数値の先頭にアポストロフィを追加できます。
これにより、Excel は数値を文字列のように扱います。唯一の欠点は、シートにこれらの数値を使用する数式がある場合、副作用が発生する可能性があることです。
過去にこの問題に対処したことがありますが、この問題は厳密には Excel の書式設定の "機能" です。残念ながら、回答を完全にテストするためのリソースはありませんが、試すことができる 2 つのことを次に示します。
- cshell スクリプト内にステップを追加して、$1 値を ="" で囲みます。
awk '{$1= "=\"" $1 "\""; print $0}' inFile > outFile
欠点は、これらの値を文字列として扱うように Excel に指示していることです。これらの値に対して手の込んだ計算を行っている場合、別の問題が発生する可能性があります。
- #2(なぜSOフォーマットは常に番号付きブロックの番号を1に変更するのですか!;-!). これは実際には Excel の書式設定の問題であり、私の記憶では、ファイルを開いて処理すると先頭のゼロを取得することはできません。黒いワークシートを事前に書式設定し、.テンプレートを作成し、ファイルをテンプレートにロードします。それもトリッキーだったので、うまくいくとは思わないでください。上記の 1 がうまくいかない場合は、最適な戦術について Excel ユーザーに相談する必要があるかもしれません。
また、助けを求める場合は、使用している Excel のバージョンを他の人に伝えたい場合もあります。
これが役立つことを願っています。
PS、あなたは新しいユーザーのようです。役立つ回答が得られた場合は、承認済みとしてマークすることを忘れないでください。また、有用な回答として + (または -) を付けてください。