Power Automate Desktop 無料版で作ったフローをタスクスケジューラで実行できなかった

先日会社で、「お金をかけずにRPAをやれ」という理不尽な指令を受けました。

無料でRPAを行う方法としてすぐ思いつくのは2つ。
・Microsoft公式ツールであるPower Automate Desktop 無料版を使う
・ブラウザのエミュレートができるSeleniumをサーバーに入れてプログラムから呼ぶ

とりあえず簡単なほうから試そうと、Power Automate Desktopでフローを作りました。

無料版には自動実行する機能がないのですが、タスクスケジューラと組み合わせて実行すればできるだろうと思っていました。
実際にタスクスケジューラで自動実行させているというサイトもいくつかありました。
しかし私の環境ではどうやってもタスクスケジューラ経由だと実行されず、あきらめて他のタスク自動実行ソフトを探すことにしました。

見つけたのは
Multi Function Alarm
というフリーソフトで、かなり細かい設定もできるようです。

早速、Power Automate Desktopで作ったフローにショートカットを指定し、
それをVBスクリプトで呼び出すファイルを作成し、
そのvbsファイルをMulti Function Alermで毎日実行する設定を行い、無事実行されました。

ショートカットを呼び出すVBスクリプトの例
(Ctrl+Shift+Alt+F1の場合)

Visual Studio Code ver1.101で日本語の挙動がおかしくなった?→解決

Visual Studio Code(以下VSCode)のVim拡張機能を入れているのですが、検索やコマンド入力時に日本語を入力するとテキストがそのまま本文内に入力されるようになってしまいました。

最初、Vimの拡張機能のアップデートのせいかと思い、拡張機能のバージョンを何カ月か前のものに下げてみました。
しかし改善されないので、どうやらVSCode本体のアップデートによるもののようです。
(2025年6月時点のバージョン:version 1.101)

VSCodeのVimキーバインドに完全に体がなじんでいるので、私にとってはこの問題はかなり深刻です。

しばらくVSCode本体を数カ月前のバージョンに戻してしのいでいたのですが、解決方法が見つかりました。

Issueより
https://github.com/VSCodeVim/Vim/issues/9672

このIssueのとおりにsetting.jsonに下記を追加すれば解決しました。

助かりました。このIssueの投稿者、回答者の方々に感謝!

phpSpreadSheetで円グラフの色を指定する方法

phpSpreadSheetで円グラフ、ドーナツグラフの各値の色を指定する方法が分からず、
調べても情報がヒットせず、あきらめかけていたのですが、自分でいろいろ試していたらできました。

PhpOffice\PhpSpreadsheet\Chart\DataSeriesValues で描画データをセットする際に、
7番目の引数に配列で指定すればいいみたいです。

例)

系列ラベルやX軸ラベルの指定時ではなく描画データの指定時なので注意。

最初からグラフを挿入したExcelを読み込めばいいじゃないと考えたのですが
読込んだExcelを更新して保存→PDF変換をする際にどうしてもグラフが消えてしまう事象があり解決できませんでした。
なのでphpSpreadSheetで自分でグラフを描くことにしました。

方法はとにかく、クライアントの要望どおりにやりたいことができたのでよしとします。

ロリポップで無料SSLを使うためにドメイン移管

レンタルサーバーの「ロリポップ」で作成されたサイトに対して
「無料SSLを適用してほしい」という依頼を受けました。

うまくいけばロリポップのコントロールパネル上の設定で終わるか、
終わらなくてもドメイン管理側のDNSレコード設定で済むだろうと簡単に考えていました。

しかし、落とし穴がありました。

ドメインはSquareSpaceで管理されていたのですが、
ロリポップでは自社のネームサーバーを使用するか、
または同じ会社がやっているムームードメインでドメインを管理していないと
無料SSLは適用できないという仕様でした。

さらに、メールはGoogle Workspaceを使用していたため
DNS管理機能のないロリポップのネームサーバーに設定してしまうと
Googleのメールは利用できません。

WEBはロリポップ、メールはGoogleを維持したまま解決する方法としては、
ドメインをSquareSpaceからムームードメインに移管するしかありませんでした。

ドメイン移管はどうしてもサイトとメールが止まってしまう期間が発生します。
クライアントと密に連絡を取り合い、
ドメイン移管が完了したと同時に、ムームーDNSをセットアップし、DNSレコードをすばやく追加し、
クライアントの業務ストップを最低限にして対応は完了しました。

余談ですが上記作業の過程で、ムームードメインにて
ネームサーバーを変更しようとすると
「ネームサーバ設定中にエラーが発生しました。」
というエラーで変更できないという事象が発生しましたが、
これはドメイン移管したばかりでWhois情報の認証がまだ完了していないためでした。
認証完了が待てなかったためWhois情報はムームードメインによる代理公開設定を行い、
すぐにネームサーバーを変更できました。

【MySQL】レンタルサーバーのMySQLがロックされたときの対処方法

レンタルサーバーのMySQLのロックを解除してほしいという依頼を受け対応したので備忘録として残します。

Xサーバーのレンタルサーバー上のMySQLで
複数のテーブルを紐づけたUPDATE文を実行したところ、
結果が返ってこず、対象のテーブルのデータを更新しようとすると

というエラーで更新できなくなったとのこと。
また、レンタルサーバーのMySQLを再起動する方法は用意されていないとのことで、ロックを解除する必要があります。

以下の手順でロックを解除しました。

1.サーバーにSSHで接続する

専用サーバーやVPSでなくてもSSH接続できるレンタルサーバーが増えています。
今回のサーバーは「Xサーバー」のレンタルサーバーですが、SSH接続が用意されていました。

2.コマンドでMySQLにログインする

でパスワードを入力してログインします。
対象のデータベースだけの権限を持っているユーザーでOKです。

3.データベースを選択する

4.プロセス一覧を表示する

実行中のプロセスが一覧で表示されますので、
ロックの原因となっているSQLの「Id」欄をメモします。

5.プロセスをkillする

以上です。

その後、適切にインデックスを追加したことで
ロックすることもなくなりました。