- ベストアンサー
プログラムについて
WindowsプログラミングのC++BuilderとVisual Basicでお聞きしたいことがあります。 ExcelファイルをWordファイルに変換したいんですが、 これっていうのはプログラムで変換出来るんでしょうか? 手動でなら保存の時にテキスト形式を選べばいいんですが、かなり量が多いので時間がかかってしまいます。 いろんな参考書を見てがんばってはみたんですが、行き詰まってしまいました。 少しでもアドバイスがいただければうれしいです。 どなたか分かる人や、いいサイトがあれば教えて頂きたいです。 お願いします。
- yaho
- お礼率64% (116/179)
- その他(プログラミング・開発)
- 回答数4
- ありがとう数6
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
VBからのコントロールですが、yochiさんの回答のVBAの ようにVBから実行します Private Sub Command1_Click() Dim objExcel As Excel.Application Dim objbook As Workbook Set objExcel = CreateObject("Excel.Application") Set objbook = objExcel.Workbooks.Open("C:\TEST1.xls") objbook.Application.DisplayAlerts = False objbook.SaveAs "C:\TEST1.TXT", xlText objbook.Close False objExcel.Quit Set objbook = Nothing Set objExcel = Nothing End Sub で、C++Builderからです //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include <utilcls.h> #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- //#include <system.hpp> //#include <vcl\oleauto.hpp> void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString sExcel = "Excel.Application"; Variant excel = CreateOleObject(sExcel); //excel.OlePropertySet("Visible",-1); Variant book = excel.OlePropertyGet("Workbooks").OleFunction( "Open","C:\\TEST1.xls"); excel.OlePropertyGet("Application").OlePropertySet("DisplayAlerts",0); book.OleFunction( "SaveAs","C:\\TEST1.txt",-4158); book.OleFunction( "Close",0); book = Unassigned; excel.OleFunction( "Quit" ); excel = Unassigned; } //--------------------------------------------------------------------------- エラー処理はしてませんので、ご注意を。
その他の回答 (3)
- yochi
- ベストアンサー率25% (17/66)
はじめまして m(_ _)m >ExcelファイルをWordファイルに変換したいんですが ExcelならVBAを使用してはいかがですか? 例えば、 ******************************************************************* Option Explicit Sub Samp() ActiveWorkbook.SaveAs Filename:="C:\WINDOWS\デスクトップ\Book1.txt", FileFormat _ :=xlText, CreateBackup:=False End Sub ******************************************************************** 上記は、ExcelのBook1の内容をテキスト形式で保存するものです。これだとWordで開く事が出来ます、この他にCSV形式で保存しても同様な事が出来ますがニュアンスが間違っていればごめんなさい f(^_^;
お礼
ニュアンスは大丈夫です。あっています。 大変助かりました。ありがとうございました。 VBだけではなくて、VBAもこれから頑張ります。
- inoue64
- ベストアンサー率29% (334/1115)
>量が多い 最初にファイルを選び、 そのすべてに対してExcelで開く-テキスト保存 の処理をする という方法があると思います。
お礼
すべてに対してExcelで開く、というところがちょっと分かりにくかったんですが、考えていただいて、ありがとうございました。
- bin-chan
- ベストアンサー率33% (1403/4213)
Excelデータを「コピー」して、WORDへ「貼り付け」ではだめですか?
お礼
だめってわけではないんですけどね。 ファイルがたくさんあるから、ちょっとしんどいです。
関連するQ&A
- メモの形式(c言語)
c言語をやる際に、メモ帳にプログラムを記述しています。 保存をするときに全てのファイルの形式を選んでいるのですが、 テキストドキュメントとなって保存されてしまいます。 どうすればcファイルとして保存できるのでしょうか? ちなみにまぐれで一度だけCファイル形式で保存できました。 お願いします。 猫でもわかるプログラミングというとこを参考にしています。
- ベストアンサー
- C・C++・C#
- C++Builderでの文字化け
C++BuilderのRichEditを使ってその内容をテキスト形式で保存したいのですが、 実際に保存されたファイルをメモ帳で見ると改行が■になって表示されてしまいます。 そのデータの内容はプログラムで RichEdit1->Text = "ほにゃらか\n"; と書くと'\n'のところがだめです。
- ベストアンサー
- C・C++・C#
- 付属プログラムを引用してもエラーが起きて困っています。
参考書に書かれてあるプログラムを書き写して練習してますが、 ビルドしたところ、参考書と同じなのにビルドエラーが起きます。 ちなみに、今参考にしているのは、 猫でも分かるゲームプログラミングです。 試しにその付属CDのプログラムを 外部ファイルの画像を描画するプログラムのcppごと まるまる移してもなぜかビルドエラーになります。 開発環境はVisual C++です。 開発環境が違えば製品についてくるプログラムでもエラーが 起きるのでしょうか? あと、猫でも分かるゲームプログラミングの他にC言語逆引き大全を持ってます。
- 締切済み
- C・C++・C#
- プログラムで文字をBMPファイルに書き、その結果をBMPファイル形式で
プログラムで文字をBMPファイルに書き、その結果をBMPファイル形式で保存するやり方を教えてください。 Microsoft Visual C++ 6.0を使用しています。 よろしくお願いします。
- 締切済み
- C・C++・C#
- フリーのテキスト変換プログラムありませんか?
WordやExelデータをテキスト変換してくれるプログラムを探しています。 出来ればライブラリ形式のもの良いのですが、EXE形式でもプログラムからコール出来るものであれば構いません。 フリーのもので何か良いものはありませんでしょうか?
- 締切済み
- C・C++・C#
- 何かプログラムを作りたいのですが…
はじめまして。プログラミングを猛(?)勉強中の中一です。 ところで、今、Cを勉強してるんですが、そろそろおおずめをむかえてきたので、本に載ってるようなプログラムでは我慢できなくて、もっと大きなプログラムを作りたいという衝動がおさえきれなくなってきました。 ですが、どうやって作ればいいのかわかりません。 はじめに作りたいものは、テキストエディタなんですが、はじめは「メモ帳」レベルからはじめて、高機能なものにしていきたいとおもっています。 なので、どうやってつくればいいかを詳しく教えていただけるとうれしいです(参考になるサイトでも結構です)。 また、言語はC/C++じゃなくてもいいです(勉強しますから)。 どうかご回答をよろしくおねがいします。
- ベストアンサー
- C・C++・C#
- visual c++の文字コード判別
現在、visual studio2010のvisual C++でメモ帳をテキストボックスに表示するプログラムを作成しています。 しかし、文字コードがASCIIで保存してあるファイルを開こうとすると、文字化けが起こります。 shift-jisなどに変換しようとすると、ほかの文字コードで保存してあるファイルを開いたときに文字化けが起こります。 文字コードがASCIIのテキストファイルを開くときのみ、shift-jisなどに変換しようと思うのですが、文字コードがASCIIであるか、そうでないかを判別できる処理があれば教えていただけないでしょうか?
- 締切済み
- C・C++・C#
- ワード・エクセルの保存形式の方法について
ワード・エクセルの保存形式の方法について ワード・エクセルは、2003のバージョンを使用しておりますが、送り先より、2002形式以下で保存との支持があるのですが、保存方法がよく分かりません。 ワード・・・ファイルの種類(Word97-2003&6.0/95-RTF)で保存すと2002形式以下で保存になりますでしょうか?確認すると、(リッチテキスト形式RTF)になってしまっています??何故でしょうか? エクセル・・・ファイルの種類(Microsofto Excel97-Exce2003および 5.0/95ブック)で保存すれば、2002形式以下で保存されますでしょうか? よろしく、お願い致します。
- ベストアンサー
- オフィス系ソフト
お礼
プログラムは本当にありがとうございました。 やはりもっと勉強しなくてはいけませんね。 今回は本当にお世話になりました。
補足
プログラムまで書いて頂きありがとうございました。 質問なんですが、この回答っていうのはまずVisual Basicで実行してから Builderで続けて実行するんですか? それともBuilder単独でもできますか? Builderだけで実行したんですが、 [C++ エラー] sysvari.h(2583): E2451 Undefined symbol 'TAutoArgs'. [C++ エラー] sysvari.h(2583): E2451 Undefined symbol 'args'. のように、sysvari.hでエラーがかなり出ました。 難しいプログラムだったので、Formにも何を置いていいのか分かりませんでした。 出来れば教えて頂きたいです。 あと、Test1 - Test2 - Test3・・・のように一気にやるには、変換のところを ループで回してやれば出来るんですかね?