@bill_g (ka g)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

RPA お勧めのRPAは・・・

解決したいこと

会社にてAccessとExcelでデータをコピー&ペーストして作業しています。
これを自動化すべく、数あるRPAの中からどれを使うか選定中です。

手順
1 特定のExcelを開きます。
 その日の日付のファイル名のExcelを別途作って用意しています。
2 指定行をフィルター。セルを選んでフィルターの下3つだけ解除
3 フィルター行より下のデータのある個所をすべて削除
4 フィルターを解除して3つを復活させます。保存終了。
5 編集したExcel(1~4を行ったExcel)と他3つを別フォルダへコピー&貼り付け
6 特定のAccessを開きます。
7 Accessファイルの特定のボタンを押下。質問ウインドウにyを1回、押して回答。
8 指定フォルダの指定するExcelを開きます。(毎日ファイル名が変わります)
6行目以降のデータのあるセルをすべて選択。コピーを選択。(Accessへ貼り付けるため)
9 Accessファイルの別な特定のボタンを押下。Excelからのデータを貼り付け。
閉じる。Excelは閉じる。閉じる際に「他に貼り付けますか?」にnで回答しExcel終了。
10 別な指定するExcelを開きます。(毎日ファイル名が変わります)
6行目以降のデータのあるセルをすべて選択、コピーを選択。(Accessへ貼り付けるため)
11 Accessファイルの別の特定のボタンを押下。Excelからのデータを貼り付け。

など
この続きで20~30手順あります。

この他
作業日の西暦月日を取得して、1日前の日付を選んでファイル名にしたい
当日が2022年12月25日でしたら、20221225を取得しファイル名として20221224を貼り付けしたい
・・・など

発生している問題・エラー

どのRPAが良いのか、RPAが多すぎて選べません。
HiM・・・やMicrosoft Power Automateなど。

自分で試したこと

Power Automateはウインドウの中の文字列(数字)を選ぶとき
2桁目だけで良いのですが文字列全体を取得してしまい、1文字だけ選択できませんでした。
1文字だけ選択する方法を模索中です。

1 likes

3Answer

有償製品のRPAなら多かれ少なかれOfficeの自動化のライブラリはあると思われます。
Power Automate Desktop(Power Automateはサーバで動く、こっちはデスクトップ環境で動く)
はMS365を契約していれば使用は出来るので、前提条件としてOfficeの利用が想定されるのであれば他の改善にも利用できるのではないかと思われます。

ただ、最終的な利用方法が不明なので断定できませんが、
PowerQueryで片付くような内容な気もします。
PowerQueryはPowerBIやExcelに内包されています。
同じ学習コストが掛かるなら毎日の自動更新が設定できるPowerBIはおすすめです。

2Like

Comments

  1. @bill_g

    Questioner

    無料RPA(サポート時のみ有料)や有料RPAも検討中です。
    PowerQueryやPower Pivot、マクロ、VBA・・・模索中です。

    具体例を揚げましたが抽象的な質問になり、回答しにくい中の書き込みをありがとうございます。
  2. 具体例は良いと思います。粒度も細かいので読みとけば把握ができますが最後まで書いてないので前日の作業者別の残り作業以外を消して当日の作業予定表みたいなものを作りたいのかな?みたいな概要把握が出来なかったのでコメントが的外れになりそうと判断しました。

    batかvbs職人かと思われますので
    ネット検索のソフト名とやりたい処理のキーワード適合数で判断するのもありだと思います。数が少ないとユーザも少ないですしね

VBAで操作されてはいかがでしょうか?

書かれた手順の他に20~30手順があるとのこと。
確かに人手でやるのは大変かもしれませんが、RPA入れてまで行うことでしょうか?
RPAの場合、例えばUiPathなどは年額数十万と費用がかかるため、この1工程のために導入はムダです。
会社で使用しているのがoffice365であれば契約によってはPowerAutomate(クラウド版)が利用可能。windows11であればPowerAutomate desktopが利用可能となります。

RPAは無料ではないので、導入するのであれば費用対効果の検討は避けられません。
無尽蔵に使える企業であれば別ですが。
またシステムを導入するとなるとシステム部門への承認等々必要です。

そういった面から見ても、自分で勉強するだけで他部署の手を煩わせることもなく、費用も発生しない。またシステムに許可取りも要らないという点からも、VBAを入れてみるというのが良いと思います。

2Like

Comments

  1. @bill_g

    Questioner

    Visual Basic for Applications,重い宿題です。勉強致します。
    DOS窓からバッチファイルで実行等の小細工をして、業務の簡略化をしております。

    プログラムのソース・テキストファイルのみを対象でしたら、テキストエディタで数千のファイルの中から指定項目のみ置き換え・保存を行っていました。

    ウインドウモードではどのタスクに切り替えて、このボタンを押して・・・が
    画面の座標で判断するRPAとかあって、「???」でした。
    RPAでは画面の座標を見るしか無いかもしれませんが、対象アプリの「このボタンを押下したい」が出来ないRPAもありました。

末尾10行(さて)からお読み下さい。 

 2005年からのRPAをリードしているUiPath,国内でWinActorでしょうか?

 OSSはwebdriverの仕様を100%実装しているとは限りません。
何故ならseleniumはwebテストツールとして誕生し、RPA、クローラとして発展したからです。

seleniumの根源はwebdriverにあります。

各言語の予約語がwebdriverのメソッド名と競合したため、各言語のseleniumはチョット文法が異なります。vbaの場合は value でなく、 Value に強制変換されることでしょうか? 

vba-seleniumですが、このリファレンスを見る限り、最近アラート対応したようで、

driver.SwitchToAlert.Accept()

対応ドライバーの種類、iframe対応、マウスホイール対応、サイズ変更等の記述がありません。事実関係は他のサイトや本家サイトをご確認下さい。

ruby,pythonが1歩先にありますが、excelにはwindowsAPIが利用でき、seleniumの実装漏れやwebdriverの仕様外を実装できます。
 また、excelは上の例のdriverインスタンス変数をブックを閉じるまで保持できるメリットは1つリードしてます。

powershell seleniumも登場していますので、サイト検索して比較検討して下さい。

さて、

数あるRPAの中から説明してました。今までの長文は記憶の彼方へ・・・

AccessとExcelでデータをコピー&ペーストして作業

なら、Access VBA でexeclを操作する1択です。RPA関係無いです。動的にexeclのシートをリンクして、Accessのテーブルとして処理するだけです。

1Like

Comments

  1. @bill_g

    Questioner

    WinActor、ソフトウェアロボット・・・。RPAの言葉を聞く度に「DOSのBATでいけるんじゃないのか?」と模索しては挫折していました。

    Microsoft Power Automateを操作してみました。数字入力欄の1文字だけ選択が出来ずに悩んで終わりました。ベテランの方でしたら1文字選択は楽々かもしれません。

    Accessを中心に置いて配下でexcelを自動操作・・・も手順を学習する前提が立ちふさがっております。これも要勉強。

    選択肢の多い「自動実行」、多いゆえに悩みも多い・・・です。

    ご回答左下の「いいね」は、私は1回押したつもりですが「ハートが2」になったり「ハートが1」になったりですみません。(なぜ2に?)
    ご回答いただいた皆様には「ハートを1回」押しております。
    2になった方、1になった方のご回答を区別はしておりません。
    ご回答に感謝しつつ・・・。
  2. Accessの方がexeclより簡単でですよ!
    データの定義が堅い分、プログラムがシンプルにおこなえます。先ずはエクセルを手動でリンク(アタッチ)して、VBAの勉強すると良いとおもいます。

    ハートは無意識に触れただけでは?

Your answer might help someone💌