![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
いつもお世話になっております。
他にも質問をしており申し訳ないですが、どうしても困っておりまして新たに質問させていただきます。
UTL_FILEパッケージにて、予め用意しておいた雛形のExcelファイルに対して、入出力モード='A'にて追加書き込みしたいのですが、「PL/SQLプロシージャは正常に完了しました」は表示されますが、実際のファイルには全く追加書き込みされません。
入出力モード='W'にて新たなファイルを作成し、そのファイルに一切触れないまま、入出力モード='A'で書き込みを行うと、最終行に確かに追加されております。ただ、その新たなファイルをオープンして何か加工するとそれだけで追加書き込みができなくなるようです。
そもそも既存のExcelに追加書き込みできるものなのでしょうか?
どなたかご教授いただけませんでしょうか?
宜しくお願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
Windows版のオラクルは、PL/SQLでCOMオートメーションを利用できますので、
EXCELを起動し、セルに情報を追記することは、可能です。(標準機能)
オラクルサーバにEXCELがインストールされている必要がありますけどね。
ただ、EXCELで統計資料を作成するのが目的なら、EXCEL側にVBAでオラクルデータを
読み出して、資料を作成する方が簡単かつ事例がたくさんあるように思いますよ。
ご回答ありがとうございます!
COMオートメーションで色々と検索してみましたが、正直難しくてよくわかりません。なにか良いサイトか、もしよろしければサンプルコードなどをご提示いただくことは可能でしょうか?
どうか宜しくお願い致します。
No.1
- 回答日時:
「雛形のExcelファイル」と書いているところが気になるのですが、
その「Excelファイル」の拡張子って*.xlsですか?
それとも*.xlsxとか*.csvでしょうか?
*.xlsフォーマットはバイナリですし、*.xlsxもXML形式ですから、
単純にそれらの形式のファイルの後ろに追加書き込みしても
Excel上では反映されませんよ。
ですから、それは「追加書き込みされていない」のではなくて、
「書き込みはされているがExcelで開いても見えていない」という話では
ないかと思います。
単純にファイルの後ろに追加書き込みした結果がExcelで反映できるのは
*.csvフォーマットじゃないと無理で、それ以外のフォーマットの
Excelファイルを(Excelを使わずに)読み書きするためには、.NETやVB、
perl, pythonなどのプログラム開発環境向けに準備されている
Excelファイルを取り扱うためのライブラリを併用する必要があります。
OracleのUTL_FILE単体だと、元々何らかのデータが入っている
Excelファイルを更新するのは無理だと思いますが。
ご回答ありがとうございます!
>その「Excelファイル」の拡張子って*.xlsですか?
まさに*.xlsです。
>*.xlsフォーマットはバイナリですし、*.xlsxもXML形式ですから、
単純にそれらの形式のファイルの後ろに追加書き込みしても
Excel上では反映されませんよ。
ですから、それは「追加書き込みされていない」のではなくて、
「書き込みはされているがExcelで開いても見えていない」という話では
ないかと思います。
なるほど、そういうことだったんですね。
>Excelファイルを(Excelを使わずに)読み書きするためには、.NETやVB、
perl, pythonなどのプログラム開発環境向けに準備されている
Excelファイルを取り扱うためのライブラリを併用する必要があります。
OracleのUTL_FILE単体だと、元々何らかのデータが入っている
Excelファイルを更新するのは無理だと思いますが。
PL/SQLのみを使用して、簡単な統計が作れれば工数削減になるかと思って思いついたのですが、ムリなようですね。。
csvファイルに記号(===等)を使用して、枠線っぽく書いて加工するしかなさそうですね?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Excel VBA 転記について 1 2022/04/20 16:55
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- その他(Microsoft Office) エクセルでテーブルの最終行が自動追加されない 1 2023/01/04 15:09
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- ノートパソコン パソコンのファイル追加履歴について 1 2022/05/07 15:35
- その他(メールソフト・メールサービス) Thunderbird にアカウントの追加ができない 1 2022/09/27 17:39
- その他(Microsoft Office) OneDrive Personalについて 1 2022/08/02 18:25
- Excel(エクセル) マクロの付いたExcelが開けません 3 2023/02/01 10:54
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語初心者の質問失礼します。
-
C言語のfopenについて教えてく...
-
C言語関数違いについて。
-
機械学習初心者です。 本を読み...
-
csvファイルを開かずに文字を検...
-
fopenできる上限の変更
-
Access2010の最適化設定について
-
テキストファイルの最終行を削...
-
分割コンパイルの#defineについて
-
fopen 中のエラー
-
HTMLファイルをメモ帳から開きたい
-
CSVファイルへの保存の際、デー...
-
ファイル名の先頭にアンダース...
-
ピクチャボックス, PaintPictur...
-
マクロを作成したファイルを立...
-
グローバル変数のよくない使い...
-
XMLファイルの表示について
-
特定のファイルを作成している...
-
C#で、フォームのタイトル名を...
-
iniファイルに追記がしたいです。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語初心者の質問失礼します。
-
csvファイルを開かずに文字を検...
-
ファイル名の先頭にアンダース...
-
バッチで118項目のCSVを処理し...
-
テキストファイルの最終行を削...
-
CSVファイルへの保存の際、デー...
-
SGファイルって何ですか?
-
大きいサイズのテキストファイ...
-
ドラッグアンドドロップでファ...
-
分割コンパイルの#defineについて
-
グローバル変数のよくない使い...
-
iniファイルに追記がしたいです。
-
Excelマクロでの再読込み方法
-
C言語のfopenについて教えてく...
-
ハッシュの計算時間について
-
VBAにてEXCEL以外のファイル(テ...
-
Javascript で INI の読み書き
-
同じ名前のファイルを作った場...
-
ASP .NETでファイル選択ダイア...
-
VBに、Cのincludeのようなもの...
おすすめ情報