質問: ExcelのVBAからC言語で書かれたプログラムを呼び出すことは可能でしょうか。 可能であるらしいことはわかるのですが,検索しても概念的なことしか書かれておらず,具体的方法がわかりません。 例えば以下のような場合どのようにすればいいのでしょうか? ......... ExcelのセルA1に1を入れておく, VBAでそれを読み取る, C言語で書かれたプログラムにその値を送る, その値を100万回足し算する, 結果をVBAに送る, VBAでExcelのセルB1にその値を書き込む。 .......................... というような操作をしたいです。 もちろん,これだけであればVBAだけでやっても簡単にできるのですが,もっと複雑な計算になると圧倒的にC言語の方が速いので,それを利用したいのです。 じゃぁ,すべてをCでやれば?と仰るかもしれませんが,入力データが大量にあり,尚且つ,2次元的に配列されていることに意味があるものなので,Excelの機能が欠かせないのです。 出力も同様にExcelでなければ私には難しいです。 テキストで書いたCプログラムを,どのようにコンパイルすればいいのか? VBAからどう呼び出すのか? この2点を教えてください。 なお,現在はCについては,GCCでコンパイルして使用しております。 ExcelのVBAに関しては,かなり複雑なプログラムを書くことが出来ます。
回答: >ExcelのVBAに関しては,かなり複雑なプログラムを書くことが出来ます excelを使ってcsvやtsvを出力してみてはどうでしょうか。 TSV、CSVファイルの作り方、保存、利用方法 | エクセル初心者!?の部屋 すると、コマンドライン上では単なるテキストファイルの読み込みに帰着します。C言語での出力もtsvなどにリダイレクトすればよいです。