お久しぶりのOffice スクリプトの記事です。
昨年の11月にボタンからスクリプトを実行できる「スクリプト ボタン」(Script buttons)機能のリリースが発表されました。
Office スクリプトがボタンから実行できるようになる、との新機能の発表があって良かった!
M365 Developer Community Dayで話す内容が一つできた。 #M365Devhttps://t.co/Ex5QgKncYihttps://t.co/EDvorVJ5zLhttps://t.co/TJ8E5Z98Bf— きぬあさ (@kinuasa) November 4, 2021
年内には私の環境でも使えるようになっていたのですが、いまさらながらに本機能をご紹介します。
スクリプト ボタンとは?
上記の通り「スクリプト ボタン」はシート上のボタン(図形)をクリックすることでスクリプトを実行する機能のことで、コードエディターから実行したいスクリプトを開き、「その他のオプション」から「追加ボタン」をクリックすることでボタンを配置できます。
Office スクリプトの新機能、ボタンからスクリプトを実行できる「スクリプト ボタン」(Script buttons)がようやく私の環境でも使えるようになったのですが、まさかこう来るとは…。
てっきりリボンにボタンが追加され、そこから実行するものと思ってました。 #OfficeScripts #Officeスクリプト pic.twitter.com/mgTdAOfCwG— きぬあさ (@kinuasa) November 22, 2021
Google Apps Scriptを触ったことがある人であれば、スプレッドシートで実装されている「スクリプトを割り当て」機能をイメージしてもらえれば分かりやすいかもしれません。
ボタン画像の変更
スクリプト ボタンを配置したファイルをPCにインストールしたExcelで開けば、図の書式設定や「図形の塗りつぶし」機能でボタンの画像を変更できます。
Web版のExcel上でも多少の変更は可能ですが、インストール版の方が自由に図形編集できるのでオススメです。
scriptLink要素によるスクリプトの紐づけ
スクリプト ボタンを配置したファイルをZip解凍し「drawings」フォルダ内のXMLファイルを開くと、scriptLink要素のval属性の値でスクリプトへのリンクが指定されていることが確認できます。
<xdr:cNvPr id="**" name="角丸四角形 1"> <a:extLst> <a:ext uri="{********-****-****-****-************}"> <a16:creationId xmlns:a16="http://schemas.microsoft.com/office/drawing/2014/main" id="{********-****-****-****-************}"/> </a:ext> <a:ext uri="{********-****-****-****-************}"> <asl:scriptLink xmlns:asl="http://schemas.microsoft.com/office/drawing/2021/scriptlink" val="{"shareId":"ms-officescript%3A%2F%2Fonedrive_business_sharinglink%2*****"}"/> </a:ext> </a:extLst> </xdr:cNvPr>
スクリプト ボタンがインストール版Excelでも利用可能に!?
先日、Insider向けのリリースでインストール版のExcel(Excel for Windows)でスクリプト ボタンが利用可能になると発表されました。
With script buttons becoming available in Excel for Windows, we move one step closer to making Office Scripts an automation solution that you can use to manage your workflow anytime and anywhere. While you still need to use Excel for the web to create and manage your scripts, we recognize that Excel users utilize a variety of platforms to complete their tasks. So we intend to investigate more cross-platform investments as part of our future work.
https://insider.office.com/en-us/blog/run-your-office-scripts-using-a-button-in-excel-for-windows より
Office Script が、Windows 版 Excel で利用可能に…ただしまだ、Office Insider Beta Channel 向け #パソコンのツボhttps://t.co/Jnxq2zAJQC
— click (@pcclick007) January 27, 2022
2022年1月28日時点では、残念ながら私の環境(Betaチャンネル バージョン 2202 (Build 14922.20000))では利用することができないのですが、段階的にリリースされるようなので使用できるようになったら改めて動作確認しようと思います。
2022/1/28 追記:
別のPCで試したらExcel for Windowsでスクリプト ボタンが動作することが確認できました。動作する・しないはWebView2あたりが何か影響している可能性がありますが未検証です。
動作を見る限りコードエディターでコードも表示できるので、もしかしたらその内編集もできるようになるかもしれないですね。
Script buttons work in Excel on Windows and on the web. They allow a script to be run with a button that is on a worksheet. To create or edit a button or script, you still need to use the web application.
(スクリプト ボタンはWindows版ExcelでもWeb版Excelでも動作します。ワークシート上のボタンからスクリプトを実行可能です。ボタンやスクリプトを作成したり編集したりするには、まだWeb版を使用する必要があります。)
「Differences between Office Scripts and VBA macros」より
2022/2/9 追記:
Docsでスクリプト ボタンの説明から「プレビュー」が消えていました。
Excel Blogではまだ記事がありませんが、近いうちにGAになるのではないかと思います。
「Office Scripts in Excel on the web」より
2022/2/10 追記:
@ai_yamasaki さんからMicrosoft 365 roadmapに追加されているとの情報をいただきました。ありがとうございます!
Microsoft 365 Roadmap に登録されたようです。2022年4月に GA 予定とのこと! @kinuasa https://t.co/rZOEqHDThq pic.twitter.com/SeZJezbp6j
— Ai Hirano | Microsoft MVP 👉 ❤️ SharePoint (@ai_yamasaki) February 10, 2022
この記事へのコメントはありません。