• ベストアンサー

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

市販の構造計算ソフトを使って部品の強度計算をやってます。 手順は、 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

  • 制御システムの解析ソフト

    制御系の特性をパソコン上で解析するためのソフトを探しています。 伝達関数を与えて、そのパラメータや入力を変化させたら出力がどうなるのか、といったことを 調べたいのですが、適当な市販製品(またはフリーウェア)があれば教えてください。

  • Access 条件抽出クエリについて

    宜しくお願いします。 Accessの条件抽出クエリについて二つ質問があります。 1.抽出結果をフォームに出したいときはどうしたら? 正確には、パラメータ入力フォームを使用してパラメータを入力させ、 その結果をまたフォームに出力させたい、というものになります。 パラメータ入力フォームはできたのですが、ここで「OK」ボタンをクリックしたときに何かを指定してやればよいのでしょうか。 2.全てを対象としたい場合はどうしたら? 条件を入れたい項目が「取引先」「期間」と2つあり、どちらも指定したい場合は簡単にできるのですがどちらかだけを指定して、もう片方は全てを対象としたい場合はどうすればよいのでしょうか。 複数の内容で申し訳ございません。 宜しくおねがいします。(><)

  • Fortran90のプログラムコードからインターフェース(ソフト)を作成する方法を教えてください。

    まったくの素人です。 Fortran90で作った大規模なプログラムコードがあります。 多くのパラメーターを入力して計算するプログラムです。 これを利用して、入力を簡易にし、計算結果をグラフ等で確認できる、インターフェースを開発しようかどうかと思案中です。 市販の一般的なソフト(Wordやexcel)のように、 ツールバーなどを備えていて、誰でも簡単に取り扱えるようにしたい、と考えているのです。 そこで、ご質問なのですが、 Fortran90からこのようなインターフェースを開発するためには、どのようなステップあるいはどのようなソフトが必要になるのでしょうか?

  • プログラムのパラメータの自動入力

    お世話になっております. 以下のようなプログラムがあります. 1. hoge.exe を実行すると 2. Dosウインドウが立ち上がり InputA : _ #入力待ち状態になる,Enterを押すと3.へ 3. inputAにパラメータを入力すると InputB : _ #再び入力待ち状態になる 4.すべてのパラメータを入力すると,プログラムが走って結果がテキストファイルに出力される. そこで質問ですが,この入力(InputA,InputB...)を自動化する方法はあるでしょうか? ソースは無く,exeファイルしか現在は手元にありません. いくつかパラメータを変更して,出力ファイルを比較したいのですが,良い方法は無いでしょうか? 助言を宜しくお願い致します.

  • このようなソフトを作ることは可能ですか?

    ある分析ソフトウエア(Windows2000以上で動作)を使っているのですが、そのソフトにはSDKやスクリプト制御ができないため、手作業で分析・結果出力をおこなっております。しかし分析する作業が膨大なので、なんとかこのソフトの操作を自動制御したいと思っていますが、そのようなアプリケーションソフトを作ることは可能なのでしょうか? 現在手作業でやっていることは以下のことです。 1.ソフトウエアを起動する 2.「分析ボタン」を押す 3.すると結果が出るので「結果出力ボタン」を押す 4.ファイルブラウザが立ち上がるので「result20080715.txt」などと任意の名前をつけて保存する このような単純な作業なのですが、これを数万回繰り返すのでとてもじゃなですが手作業ではどうにもなりません。 そこで、このソフトを操作するようなアプリケーションを作りたいと思っているのですが、どのような手法で操作すればよいのでしょうか? なんとなく、ボタンなどのコントロールオブジェクトのOnClickなどを実行すればいいような気もしますが、そもそもコントロール名が不明なので、私にはこれ以上のことが思いつかないのです。 また、そういうアプリケーションを作ること自体が違法でしょうか? ちなみにこの分析ソフトはフリーウエアで、すでに開発は数年前にストップしているようです(作者のサイトも存在しません)。作ったのはVB6というのだけわかっています。 あと私はC++やC#の初心者レベルです。お手数ですがご回答いただければと思います。

  • ウインドウにデータを入力するプログラム言語

    ウインドウにデータを入力するプログラムは不可能なのでしょうか? 私は今までコマンドラインから使う市販の科学系ソフトに大量のケースのパラメータを入力するため、 Perlで一度に入力し、結果もまとめて一つのファイルにするプログラムを作成して使っていました。 しかし、この度、ソフトがWindows用にバージョンアップしたため入力もウインドウに書き込み、 結果も一つずつ新しいウインドウに出力されます。 このようなソフトの場合は以前のようなプログラムは作成できないのでしょうか? Perlでは難しいと思いますのでどなたか可能な言語を知っておられたら回答お願いします。

  • 【Windows】バッチスクリプトについて

    FTPサーバからデータを取得するバッチスクリプトを構成しようと思っています。 データ(ファイル)を2回取得し、1回目と2回目のデータ(ファイル)が同じかどうかのチェックし FTPサーバ上のデータ(ファイル)を削除するスクリプトを 以下手順で作成しようと思います。 1.環境変数の設定。 2.startログ出力 3.環境設定ファイル有無チェック 4.環境設定ファイル正当性チェック 5.環境設定ファイルから値の抽出 6.データ受信(1回目)パラメータファイル作成 7. データ受信処理の実行 8.データ受信処理の結果確認 9.作業フォルダ作成 10. データ受信(2回目)パラメータファイル作成 11.7~8と同じ 12.データチェック 13.FTPデータ削除用パラメータファイル作成 14.FTPデータ削除処理 15.FTPデータ削除処理結果の確認 16.rcv.dat作成 17.エラー処理 18.オリジナルデータをバックアップ 19.パラメータファイルをバックアップ 20.ログファイルをバックアップ 21.直近n回分を残して、バックアップファイルを削除 22.後処理(処理データのクリア)※念のため 23.endログ出力 ご参考までに、大まかなスクリプトをご教示いただければと思います。 とても大雑把な質問ではございますが、宜しくお願い致します。

  • 即自動計算のスクリプト

    あらかじめ出力される数値が指定されたボタンをクリックされるごとに、テキストエリアに数値が加算されるようなスクリプトはどのように書いたらいいのでしょうか?お願いいたします。

    • ベストアンサー
    • Flash
  • ファイルメーカーProのようなソフトでもっと安価なもの

    お世話になります。ファイルメーカーのようなソフト(なんて言うんでしょうか?)でもっと安価なものを探しております。フリーに1ページづつレイアウトしてファイル形式がつくれて、ラジオボタンとかコンボボックスとかテキスト入力とか自由に項目を選択できたり書き込めたり、JPEGも取り込んで挿入できたり。こういう機能のソフトでもう少し安いもの(機能は上述程度でOK)ありませんか?具体的には釣りの日記というか記録を残したいのです。日付とか風向きとか行った場所の選択や連れた魚の種類とか証拠写真の添付やコメント入力などです。たいした内容ではないので、仕事上の統計とか計算とかあまり高度なことは必要ないです。よろしくお願いいたします。

  • C#で書かれたプログラムをバッチ処理

    C#で書かれたプログラムをバッチ処理を行いたいのですが,方法があまり良く分かりません. まずC#で書かれたプログラムを起動すると, 処理したいファイル名を入力するテキストボックススと, パラメータを入力するテキストボックスが表示されて, ボタンを押すと処理が始まります. 処理したいファイルが数百あるので,バッチ処理でできないものかと考えているのですが, どのようにC#のプログラムに引数を渡して処理させればいいのか分かりません. 理想としては,コマンドプロンプトから,各種値が入ったテキストファイルなんかを読み込ませて処理できればよいのですが... 十分伝えきれているのか不安ですが,宜しくお願い致します.

専門家に質問してみよう