• ベストアンサー

市販ソフトをスクリプト処理したいのですが

市販の構造計算ソフトを使って部品の強度計算をやってます。 手順は、 1.計算に必要なパラメータをテキストファイルにして保存する。 2.構造計算ソフトを立ち上げて、   ・入力パラメータを読み込むために、入力ファイル指定ボタンを押す   ・入力ファイル選択ダイアログが開き、ファイルを選択   ・テキストボックスに計算結果を書き出す出力ファイル名を入力   ・計算開始ボタンを押す   ・計算が実行され、計算結果がテキストファイルとして書き出される 3.計算結果のテキストファイルの中身から必要な数字のみをExcelに移して、表やグラフにする。 実作業では、パラメータを少しずつ変えた100個ほどの入力テキストファイルを作り、構造計算ソフトでファイル名の指定、入力、ボタン押しを100回繰り返し、出力された100個の結果をまとめてます。 上の手順1と3はExcel VBAで作業の負荷を軽減するツールを作ったのですが、2は手作業でやっており、100件で1時間ほど束縛されております。 市販ソフトの繰り返し入力の単純作業をスクリプト処理する方法はないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • SHIMAPEE
  • ベストアンサー率75% (154/203)
回答No.1

最後までお付き合いできるかどうかわかりませんが、書かれている作業でしたら、WSH(Windows Script Host)でSendKeysを使ってみてはどうでしょうか。WSHはWindows98以降でしたら標準で組み込まれています。Excel VBAでもいいですがテキストエディタで変更して試せるので、WSH VBScript/JSCriptの方が手軽です。 市販ソフトであればWindowsの規則に従って必ずキーのみで操作できるようになっているはずです。ボタンを押す代わりに、例えばファイルメニューを開いて選択するためにALT+Fキー、↓キー、Enterキーが使えるはずです。また、ボタンやフィールドはTABキーなどで確実に移動できるはずです。 MSのサイトに電卓を操作するサンプルがありますのでお試し下さい。 http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/script56/html/wsMthSendKeys.asp?frame=true Sleepで時間を空けながら、ゆっくりキーを送ってやればよいと思います。 なお、キーはそのときにアクティブなアプリケーションに送られますので、スクリプト実行中はPCに触ってはいけません。 また、日本語入力は工夫がいるのでファイル名は英数字がよいです。ファイル名をExcelから取り込むようなことも可能ですが、勉強することが多くなるので、テキストファイルから取り込むか、スクリプト内で計算できるように1ずつ昇順などにするとよいでしょう。 テストデータで数サイクル上手くいくことを試してから本番に臨みましょう。 ----- ソフトによってはバッチで実行できるような仕様があるかもしれませんね。スクリプトにチャレンジする前に調べてみてはどうでしょう。

関連するQ&A

専門家に質問してみよう