まさおじさん@keitai_kaiがエクセルを使っておもしろい方法で動画再生[^1]を試みられていたので、便乗。
ただし、自分の考案した方法だと、Microsoft365のエクセル(最新の状態に更新したもの)限定。
[^1] 要は元となる動画を複数の静止画にして、パタパタ漫画のようにして動画として見せるというもの…なお、元ネタだと、マジのセル画だという……(セルをドットとみなして背景色を設定、シート全体で絵にしている……それを1フレーム1シートにして切り替えて表示なので……)
文字列中の、2文字にわかれている濁音/半濁音(例「た゛か゛は゜」)を、1文字(例「だがぱ」)に変換するような処理の例。
※元ネタ:橋ビロ子@hassy_birowさんのツイート
※自分の📝メモ用ツリー
- か/カ行・さ/サ行・た/タ行・は/ハ行およびウの濁音変換、は/ハ行の半濁音変換のみ可
※か・さ・た・は行については、Unicode上濁音が清音のとなり(+1)に、は行については同じく半濁音が清音の2つ隣(+2)に存在することを利用
こちらではEverything/PSEverythingを利用したが、ファイルが作成されたことを検知するならFileSystemWatcherで行けるかな?と試してみたもの。
大まかには
- ユニークな一時ファイル名とWorkbook(xlsxファイル)ファイル名を作成し、一時ファイルには最初は適当な文字列("?NOT FOUND YET?")を書き込み
- WScript.Shell経由でPowerShellを非同期で起動、FileSystemWatcherにてOneDrive配下のxlsxファイルの"Created"イベント監視設定&準備ができたら一時ファイルのサイズを0に
- VBA側で、一時ファイルのサイズが0になったら、指定されたOneDriveのフォルダURLの場所にユニークなWorkbook(xlsxファイル)を作成
- PowerShell側で、FileSystemWatcherの"Created"イベントが発生するので、一時ファイルにFullPathを記録し、PowerShell終了
※考え方は同じだけれど、Everything不要のやり方はこちら→[VBA][PowerShell] FileSystemWatcherを利用して、OneDriveフォルダのURLからローカルのPathを取得する試み
OneDriveに割り当てられたフォルダ下では、ExcelのVBAでWorkbook.Path等を参照すると、通常のフォルダのPathではなく、URLになってしまう。 これをローカルフォルダのPathに変換する手段として、知る限りでは[VBA Function to get the local path of a OneDrive/SharePoint synchronized Microsoft Office file](https://gist.github.com/guwidoe/038398b6be1b16c458365716a921814d)が最も確度が高いが、それでも[変換に失敗するケースがある模様](https://twitter.com/KotorinChunChun/status/1781695979101819031)。
SharePointで「OneDriveへのショートカットの追加」したときのトップレベルフォルダーが取得できなくなっている気配
VBEThemeColorTool(VBEThemeColorEditor用のテーマファイルを適用するためのコマンドラインツール)で使用できるテーマ集(予定)。
基本的には、適当なフォルダ(例ではVBETheme)下に
VBETheme\
vbetctool.exe
各バッチ(*.bat)ファイル
Excel VBAにて、本文中に画像を埋め込んだOutlook用メールを作成する例。
※元ネタはこちら
予め、ActiveSheet上に
のようなデータを作ってあることを想定。
※"<画像挿入位置>"という文字列を、画像に置換
PythonからOutlookに「すべてのフォルダーの送受信」(っぽいもの)を指示し、完了するまで待つような実装例です。
※元ネタ:かづき@kadukijobさんのツイート(ポスト)より
を呼び出し側のソースコードと同じフォルダにおいて、
session = requests.session()
response = session.get(TEST_URL)
"""
# TEST_URLのサーバーの設定によっては
# requests.exceptions.SSLError: HTTPSConnectionPool(host='*****', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLError(1, '[SSL: DH_KEY_TOO_SMALL] dh key too small (_ssl.c:992)')))
元ネタはぼやきツイート
しかし #エクセル のSCAN・BYROW・BYCOLあたりは(ヘルパー関数の戻り値として)せめて一次元配列を保持できればもうちょい使いやすかったのになぁ…と思わなくもない…
より。