ジメジメする梅雨のお悩み、一挙解決! >>

VC++ で 複数にわたるExcelシートを加工する
プログラミングは可能でしょうか。
例えば、3つあるExcelファイルを1つにまとめたり、
シートを分割したり、グラフを作成したりとか。

その他の方法でも、比較的実現可能なら教えてください。
マクロはほとんど触ったことはありません。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

ご質問の事柄をC++ではやったことはありませんが、


VB、VBAだと、EXCEL単体でできることは
ほぼすべて簡単にプログラムできます。

ただし、EXCELのオブジェクトライブラリの
『Excel VBAリファレンス』が手元にないと、
時間を浪費するだけでまず不可能だと思います。
    • good
    • 0
この回答へのお礼

他に回答がないところを見るとどうやらできないみたいですね・・・なんか外部パッケージとか用意したら出来
そうな気もしたのですが。
やはりVBAで無難にやることにします。
回答誠にありがとうございました。

お礼日時:2003/10/26 20:52

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qrequiredの読み方と発音

会話の中で「required」という単語が通じないことがよくあります。
「required」は何て読むのですか?自分が間違ってるようで心配です。
またアクセントの位置をご教授願えないでしょうか?

Aベストアンサー

「リクワイヤド」ですね。

Rの発音の仕方はとにかく舌が口のどこにも当たらないようにすることと、最後の「ド」の発音ははっきりと発音してはいけません。心なしに小声で(なんじゃそりゃ)ドゥ、と言う感じです。

アクセントの置き場所は、「ワイヤ」の部分です。

「リク(舌をどこにもつけずに)ワイヤ(少々大声で)ドゥ(心なしに小声で)」

という感じです。って難しくなってしまいましたが、
これです!!

QVC++からExcel制御

こんにちわ。
題のように、VC++でexcelファイルを読み書きするプログラムを
作成中です。基本的な、excel起動などの方法はわかったのですが、
関数のリファレンスなどが見当たらず困っています。
Excel:: 以下の関数が羅列してあるような情報はないでしょうか。

書籍、サイトなんでもいいので、もしご存知でしたらお願いします。

Aベストアンサー

オートメーションですね。
VCのバージョンもExelのバージョンも
明記されていないのではっきりしたことは書けませんが、
Excelタイプライブラリからクラスを作成すればExel操作用の関数の一覧は確認できます。

タイプライブラリの名称は下記サイトに書かれている方法で確認してください。リファレンスとなるヘルプファイル名もタイプライブラリ名称の数行上にかかれています。

質問をする際はバージョンなどを明記したほうがより確かな情報を得られますよ。

参考URL:http://www.ujasiri.com/prglib/vc/vc.html

QWin32.VB.svhとは

最新のSpy-bot S&Dでスキャンしてみたところ
Win32.VB.svhというマルウェアが4つ検出されました。

Win32.VB.svh: [SBI $7E9215BC] 設定 (レジストリ変更, fixed)
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Run\CTFMON.EXE

Win32.VB.svh: [SBI $7E9215BC] 設定 (レジストリ変更, fixed)
HKEY_USERS\S-1-5-19\Software\Microsoft\Windows\CurrentVersion\Run\CTFMON.EXE

Win32.VB.svh: [SBI $7E9215BC] 設定 (レジストリ変更, fixed)
HKEY_USERS\S-1-5-20\Software\Microsoft\Windows\CurrentVersion\Run\CTFMON.EXE

Win32.VB.svh: [SBI $7E9215BC] 設定 (レジストリ変更, fixed)
HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Run\CTFMON.EXE

一応削除(検疫?)はされたようですが、レジストリ変更などと書いてあって心配です。
タチの悪いマルウェアなのでしょうか?

最新のSpy-bot S&Dでスキャンしてみたところ
Win32.VB.svhというマルウェアが4つ検出されました。

Win32.VB.svh: [SBI $7E9215BC] 設定 (レジストリ変更, fixed)
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Run\CTFMON.EXE

Win32.VB.svh: [SBI $7E9215BC] 設定 (レジストリ変更, fixed)
HKEY_USERS\S-1-5-19\Software\Microsoft\Windows\CurrentVersion\Run\CTFMON.EXE

Win32.VB.svh: [SBI $7E9215BC] 設定 (レジストリ変更, fixed)
HKEY_USERS\S-1-5-20\Software\Micro...続きを読む

Aベストアンサー

うちも昨日のUPDATE後、スキャンしたら同じようにWin32.VB.svhが
4つでました。
Win32.VB.svhをキーワード検索してみたら、XPマシンだとこれが検出されているようですよ。
(○CHのSpybotスレットに、XPを複数もっている方がスキャンしたところすべてのマシンで検出されたと書き込みしている方がいました)

おそらくSPYBOTの誤検出じゃないでしようか?
先週のUPDATEでもバグがあったし。。。
うちはしばらく様子見です。

Qvc++6.0 と vc++2500

vc++6.0で

ifstream ifs("userkey.dat");
ifs.getline(oc_user1, 63);

となっていてコンパイルできていたのですが

2005にしたら
コンパイルできません
どうしたらコンパイルできますか

6.0と2005の違いを知るには何を読んだらいいでしょうか?

Aベストアンサー

std::ifstream ifs("userkey.dat");
ifs.getline(oc_user1, 63);

としてみてはいかがでしょうか。

QVirus Win32 Gael.Aとは

いつもお世話になっております。
Windows7に
Microsoft Security Essentialsをインストールしているのですが

visual studio 2008 (.net framework 3.5)で自分で作成したexeプログラムがすべて
Virus Win32 Gael.Aとしてウイルス警告されました。
プログラムソースはあるので、推奨操作通り削除したのですが(プログラムソースはあるのでまたビルドすれば元に戻るので)この「Virus Win32 Gael.A」とはどのようなウイルスなのでしょうか。

どなたかご教授よろしくお願いいたします。

Aベストアンサー

単純に記載されている検出名で検索するとマイクロソフトプロテクションセンターでは
http://www.microsoft.com/security/portal/Threat/Encyclopedia/Entry.aspx?Name=Virus%3AWin32%2FGael.A&ThreatID=-2147385669
英語の説明になっていますが概ねローカルやネットワークに増殖する事、他のマルウェアをダウンロードする事等が説明されているようです。

Aliases欄にあるMcAfeeのW32/Gael.worm.aでは
http://www.mcafee.com/japan/security/virG2005.asp?v=W32/Gael.worm.a
で日本語で説明されています。
内容は同様の感じです。

2つは発見日等が大きく違いますので、厳密には異なる物のようですが、かなり近い物か亜種なんではないでしょうか?
単にネット上の情報ですが参考までに。

QVC++5.0とVC++6.0の違いは?

何がどう変わったんでしょうか?
なんとなく使っているだけなのでぜんぜんわかりません。

簡単にんでいいんで思いつくことを書いてもらえるだけでもうれしいです。


よろしくお願いいたします。

Aベストアンサー

MFCのバージョンが違います。MFCのリファレンスを見れば6で増えた機能が分かります。

例えばブラウザを簡単に作れるCHtmlViewは6でないと使えません。

Q【Win32Api】 ERROR_BAD_UNIT のエラーとなる原因は?

WindowsNT 4.0、VC++ 5.0 の環境です。
Win32Api の CreateFile関数でエラーとなりました。
GetLastError関数で詳細エラーを確認すると、以下のエラーでした。

ERROR_BAD_UNIT:システムは指定されたデバイスを見つけることができません

ログを取ってなかったため、CreateFile関数に指定したファイル名は不明です。
以下のように再現させようとしましたが、できませんでした。

<ファイルがない>
・ERROR_FILE_NOT_FOUND
<不正なパス>
・ERROR_PATH_NOT_FOUND
<FDドライブを指定>
・ERROR_NOT_READY
<ファイル名の先頭を「:」から書く>
・ERROR_INVALID_NAME

ERROR_BAD_UNIT のエラーとなる要因は、何が考えられるでしょうか?

Aベストアンサー

もうひとつ、デバイスに対する操作ってのがあります。

----(MSDNヘルプより)---------------
通信リソースについて

CreateFile 関数は、通信リソース (シリアルポート COM1 など) のハンドルを作成できます。通信リソースをオープンするときは、dwCreationDistribution パラメータに OPEN_EXISTING、hTemplate パラメータに NULL を指定しなければなりません。次に例を示します。

hCom = CreateFile("COM1",
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
0,
NULL);
----------------------------------------

第5パラメータに OPEN_EXISTING が指定されていると
デバイス名とみなされて、存在しないデバイス名の場合に
なるらしいです。
使用できるデバイス名は QueryDosDevice() で列挙でき
ます。YAHOOで検索すると1件目に、使用例が書かれ
ているHPが出てます。

もうひとつ、デバイスに対する操作ってのがあります。

----(MSDNヘルプより)---------------
通信リソースについて

CreateFile 関数は、通信リソース (シリアルポート COM1 など) のハンドルを作成できます。通信リソースをオープンするときは、dwCreationDistribution パラメータに OPEN_EXISTING、hTemplate パラメータに NULL を指定しなければなりません。次に例を示します。

hCom = CreateFile("COM1",
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
0,
...続きを読む

QVC++6.0からVC++.NETへの変遷について

VC++がようやく分かり出したこの頃ですが、今日本屋に立ち寄ったら、なっ なんとVC++の本がほとんど無くなり、代わりにVC++.NETとVC#ばかりになっていました。

C#はVC++とは違うと聞いていたのですが、読んでみるとVC++.NETもかなり違ってました。
(かなり違うという表現は、各人の状況により意見が異なると思いますが)

私のような本を見ながらコードを打って勉強している初心者にとって、VC++.NETの本ではVC++6.0を動かすことができません。

今から勉強する人や本を買って勉強しようとしている人あるいは、コンパイラを手に入れようとしている人はVC++.NETに移行してしまわざるを得ないのでしょうか?

すでにVC++6.0を十分活用出来ている人も、時代の流れでNETやC#を勉強していかなければならないのでしょうか?

つまり、単なるバージョンアップとは一線をなす変更がなされたということなのでしょうか?

良くご存知の方見解をお願いします。

Aベストアンサー

すぐにではありませんが、.NETに移行せざるを得なくなるでしょうね。
ただ、開発環境という面では、VS.NETにはC++が含まれており、C++の部分は
従来のC++も利用できるようになっていて、これはアンマネージC++と呼ばれています。
C++で.NETのコードを作成する時は、マネージC++という拡張仕様で記述します。
また、従来のコードと.NETフレームワーク用コードを混在させてアプリケーションを
開発することもできます。これは、相互運用という形で説明されています。

ということですので、C++で習得したものが無駄になることはありません。
たぶん、.NET環境の開発には、C++よりもC#やVB.NETを利用することが
多くなると思いますが、C++を理解していることはプラスにはなってもマイナスには
なりませんので、頑張って下さい。

.NET関連のサイトを2つご紹介しておきます。ご参考に。
http://www.microsoft.com/japan/msdn/library/default.asp
http://www.atmarkit.co.jp/fdotnet/index.html

すぐにではありませんが、.NETに移行せざるを得なくなるでしょうね。
ただ、開発環境という面では、VS.NETにはC++が含まれており、C++の部分は
従来のC++も利用できるようになっていて、これはアンマネージC++と呼ばれています。
C++で.NETのコードを作成する時は、マネージC++という拡張仕様で記述します。
また、従来のコードと.NETフレームワーク用コードを混在させてアプリケーションを
開発することもできます。これは、相互運用という形で説明されています。

ということですので、C++で習得したもの...続きを読む

QVC++でwin32APIを作っているのですが・・・

こんにちは。私はwin32APIを勉強しているc言語初心者です。
私はMicrosoft Visual C++ 2008を使ってc言語のwin32APIをプログラミングしているのですが、独学でやっているので物凄く邪道なwin32APIプログラミングをしているような気がするのです。

・c言語のプログラムを書いて、C++のwin32APIプロジェクトとしてビルドする。
・ヘッダーファイルにwin32API関数がなかったので、自分のwindowOSからwin32API関数を探し出してVC++2008のなかのincludeフォルダ内にコピー&ペーストして使えるようにした。

これって邪道ですか?一応何の問題もなくwin32APIプログラムが作れるのですが、もっと正規なやり方があるでしょうか。回答よろしくお願いします。

Aベストアンサー

文章のあちこちが意味不明です。
>VC++でwin32APIを作っているのですが・・・
VC++でwin32APIを使って作っているのですが・・・

>・c言語のプログラムを書いて、C++のwin32APIプロジェクトとしてビルドする。
まぁ気になるなら拡張子を.cに変えてください。これでただのC言語として扱われます。

>・ヘッダーファイルにwin32API関数がなかったので、自分のwindowOSからwin32API関数を探し出してVC++2008のなかのincludeフォルダ内にコピー&ペーストして使えるようにした。
#includeを追加しているって意味なら問題なし。Win32APIのヘッダを自分のプロジェクト内にコピーしていたら邪道。自分のソースのヘッダファイルにWin32APIのヘッダの内容をコピーして使っているなら超邪道。将来バージョンアップで必ず問題を引き起こします。
『PlatformSDK』をちゃんとインストールしているなら#includeするだけです。

QVC++6.0からVC++.NET2005へ移植

VC++6.0で作成したプログラムをVC++.NET2005に移植しました。
ビルドを行うと『fatal error LNK1104:ファイル'mfc42.lib'を開くことができません。』のエラーが出てしまいます。
ソリューションのプロパティを見てもどこで「mfc42.lib」の参照を定義しているのか分かりません。
どこで「mfc42.lib」の参照を定義しているのか教えてください。また、対策を教えてください。

Aベストアンサー

VC++.NET2005のエディションをお教えください。
Express Editionでは、リソースエディタがない、
ATL, MFCが使えないなどの制限がいくつか存在します。

また、VC2005などでは.NET Frameworkの開発が前提となっており
WIN32APIを使用する場合などについては、Platform SDKを
インストールする必要があります。


人気Q&Aランキング

おすすめ情報