VBSを利用せずにタスクスケジューラを利用してExcelブック内のマクロ実行する方法に「起動時イベント」を利用する方法がある。
・起動時に実行するため、スケジューラで定期的に実行するにはブックを閉じる処理も必要
・スケジューラで起動以外に、ユーザーが手動で起動するときは上記の勝手に閉じるような回避したい
Pythonで、PDFのページ上の決まった位置(例:ページの右下)に画像を挿入する処理の例です。
※元ネタ:まさおじさん@keitai_kaiのツイート
DMによりご提示いただいたソースコードを元に改修しています
サンプルでは、pdf_folder_path直下にある全PDFファイル(*.pdf)に対し、各ページの決まった位置にstamp_pathで指定した画像を挿入したものを、export_folder_path下へ出力しています。
Excelのワークシートの行や列の挿入/削除を検知する試み。
クラスモジュール
四則演算の構文解析はこちらを参照
※これらをベースにして、符号(-)付き数値・小数にも対応したつもり
こちらのゅぇ。@YUExcelMARUさんのツイートが元ネタ。
【ゆる募】
Excelで1セル内に長文が書かれてて
一部表示しきれてないセル
(高さの自動調整が効いてない時や
こちらの記事用。
エクセルのセル結合はわりと嫌われることも多いです。
過激派(?)には、VBAで「セル結合したのを検知して、解除したい!」という方もいらっしゃるのではないかと思いますが、残念ながら一般的なWorksheet_Change等のイベントだとセル結合を検知することはできません。
Worksheet_Calculateイベントで検知するという方法もありますが、シートのどこかに揮発性関数を入力しておく必要があります。
調べているうちにふと、CommandBarsのOnUpdateイベントが使えないかと思いつきました。
そこで試しにやってみると、セル結合をしたタイミングでもOnUpdateが呼び出されることがわかりました!
Excelで、カギ線コネクターで繋いだ図形を整列した際に段ができてしまうのを補正するためのアドインです。
Excel.VBA.01.mp4
Excel用DatePickerで使っていた、セルの右側にユーザーフォームを表示する処理を整理し、共通機能をモジュール化&実際に使ってみた実装例です。
一応、特徴としては
- DPI(Dots Per Inch)やPPI(Points Per Inch)の値をConstで決め打ちしたりせずに実装
- シートの拡大/縮小にも対応(ユーザーフォーム自体の大きさは変わりません)
といったところです。
Excelで、カレンダーから選択してセルに日付を入力できるようにするためのアドインです。
VBA.02.mp4
- 例によって興味本位でやってみただけなので、実用性には疑問符が付きます
- ソースコードを見ていただけるとわかりますが、すこしトリッキーなことをやっています(とりあえずインターネットへのアクセスに制限があるとうまく動きません)