[過去ログ] 【自動化】MacroDroid Part2【マクロ】 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
907(2): 2021/06/16(水) 17:40:38 ID:N+fjj59T(9/14) AAS
>>903
エラーてマクロのロジックミスよね?
例外上げる仕組みはないしmacrodroidのデバッグ環境はかなり悪い 笑
基本?に忠実に手堅く書くのと地道なプリントデバッグしかないよねえ
長文連投いつもすまないが以下ご参考に
・入ってこなくても影響ないと分かってるもの以外変数は使用前に初期化する
・取得した値は使う前にチェックする
・2値以外の分岐はifとelse ifで積極的に取りたいものをすべて書いてelseは想定抜けのための捨て分岐にする
・エラーが返ってくる外部呼び出しのものにはちゃんとエラー処理を書く
・複数トリガをうまく使って縦に長くならないようにがんばる
・一本道でもif〜end ifを活用して折り畳めるようにする
・処理ブロック単位で入ってきそうな仮のデータを変数に入れて一行ずつステップ実行っぽいテストをする
・今何やってるのかポップアップか通知に残してもいいような体裁で作る
・最終的に消したい不格好なデバッグ表示はフラグを参照して一発で消せるようにしとく
・無限ループ対策に物理キーでmacrodroidが止まるようにしておく
省4
911(1): 2021/06/16(水) 20:05:03 ID:1NyI3c86(1/4) AAS
>>907
変数に想定外の値が入ったら全部IfのElseで回収するようにしてて、
そうなったら一旦マクロを止めてユーザー(俺)に通知するようにして、
後から手動で問題個所のデバッグをしてるんだけど、
Macrodoroidから別アプリの裏設定を何か所も弄ってるもんだから、ユーザーが起動するときには裏設定を元に戻しておきたい
マクロ処理の途中で止めちゃってるからどこを弄ってる途中なのかもわかりずらいし何より戻すのが面倒くさい
Elseの回収ポイントもたくさんあるから、各所に同じ手仕舞い処理を重複させるのすっごく大変
エラー処理をIfで囲んどけば丸っとコピーできるのはありがたいけど、エラー処理自体を修正する度に全箇所コピーと削除するのも大変
VBAしか知らないからよくわかってないんだけど、
Elseに入ったら Goto エラー処理行 して、末尾とかに記述したエラー処理行 にジャンプして手仕舞い処理してExit Subしちゃいたいんだ
どの回収ポイントから飛んできてもエラー処理でやることは共通にできるから、それができたらシンプルにできるんだよねぇ・・・
素直に別マクロを呼び出すべきなのかなあ・・・
913(1): 2021/06/16(水) 20:53:40 ID:N+fjj59T(12/14) AAS
>>911
例外終了処理のブロックはデバッグに必要な情報を出すことと
それと他のアプリの設定をあらかじめ分かってる全部チャラの値に戻すことだよね?
>>907の最後に書いといたんだけど
特定の変数が更新されたら発動するトリガがあるのよ
例外のelseでその変数にロギングしたい値を文字列にまとめて突っ込んでキャンセルで終了
トリガ発動するから当該トリガ発動をチェックする式を入れたifブロックで受けて終了処理してマクロをキャンセルでいいと思うよ
この例外終了ルーチンは頭に置いてもいいし他のブロックもすべてトリガチェックするif文で囲むお約束で書いてればスルーされるから最後でもどこに置いてもいい
もちろん別のマクロに分けてもいいと思うよ
>>912
ダイヤログは無理だけど通知ならできるよ
いったん終って抜けて通知タップトリガor通信再開でマクロ再開すればいい
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.277s*