質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

3935閲覧

業務デスクトップアプリを自動化させたい

mokomokoyouyou

総合スコア7

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/12/15 03:14

前提・実現したいこと

ここに質問の内容を詳しく書いてください。

初心者のためここで質問する内容かわからなかったのですが書かせてください。

やりたいことは、windowsPCでオフライン環境の社内の業務デスクトップアプリの自動化です。
普段はログインする⇒その日の顧客一覧がでる⇒一人一人のメニュー画面を開きそこから契約書を印刷する、
という作業を手動で行っています。
ここを自動化できないかなと思っています。

これが企業に依頼するような案件なのか、個人で何かの言語を使いながらトライするものなのかすら見当がつかないです。ご教授頂ければと思います。

pythonでデスクトップアプリを起動させる方法がわかれば、pyinstallなどでexe化できるのでしょうか。

試したこと

検索してみたのですが、自動化ツールなどがエクセルやwebプラウザ対象の物がおおく、デスクトップアプリ対象のに自動化させるような方法がうまく見つかりませんでした

補足情報(FW/ツールのバージョンなど)

興味本位で最近pyhonの本を読んだ程度です。

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

YAmaGNZ

2019/12/15 03:25

「Windows 自動化 ソフト」と検索するだけでそれらのソフトが出てきますが・・・
meg_

2019/12/15 04:11

RPAで出来そうですね。
mokomokoyouyou

2019/12/16 08:23

初歩的な懸案なのですね。頂いたキーワードで調べてみます。
meg_

2019/12/16 08:37

パスワードを扱われる場合には暗号化するなどご注意ください。会社によってはルールがある場合もあります。(自動化禁止のアプリがある等)
guest

回答1

1

ベストアンサー

対象となるアプリケーションの性質によってやり方は様々です。

エクセルの場合は外部から操作するためのインターフェイスを COM (Component Object Model) コンポーネントとして公開していて、直接的に機能を呼び出せます。 プログラムで操作されることを想定した設計になっているのです。 Python で COM を利用するライブラリは有りますので そういった種類のソフトを制御するのは容易です。

外部から操作するための入り口が用意されていないソフトウェアを外からプログラムで制御するなら「この名前を持つウィンドウのこの位置を押す」といったような、人間が GUI でやっている操作を肩代わりする形で実装する必要があります。

Python などのスクリプト言語でもやってやれないことはないでしょうが、専用のソフトを導入する方がずっと楽に出来るでしょう。 私がぱっと思い出せる範囲だと

  • UWSC
  • AutoHotkey
  • AutoIt

が挙げられます。

残念ながら UWSC は公式サイトが消滅して UWSC 自体のバージョンアップも見込めません。 ユーザーは多いので、わからないことは質問できる状況ではありますが業務で使う場合にはそのあたりのリスクをどのように評価するかは微妙なところです。 機能的には最もオススメできると思うのですが。

AutoHotkey は質問者の考えるような自動化も多分できますが、ホットキーの設定から発展したソフトなので操作の自動化という目的とは若干の違いがあるかもしれません。

総合的には AutoIt はベストだと思います。 スタンドアローンな実行ファイル (exe) を生成することも出来ます。 また、 AutoIt 自身の機能が COM として公開されているのでこれを経由して Python などで操作するというのもアリでしょう。

これらのソフトはいずれも無料で利用できます。

ドキュメントをざっと眺めてみてよくわからんというレベルだったら使いこなすまでに時間がかかると思うので専門家に発注した方が安いと思います。

投稿2019/12/15 08:36

SaitoAtsushi

総合スコア5738

tanat👍を押しています

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mokomokoyouyou

2019/12/16 08:20

丁寧な回答ありがとうございます。 御教授頂いた内容で試してみて、無理そうなら見積もり出そうと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問