office.notes@misora05

本館ブログのうち,Office・Windwsがらみのネタ+@を抜き出したもの.月水金更新予定.

VBA

文字列中に特定の文字列がいくつ含まれているかを数える関数@Excel/VBA

「文字列の中に特定の文字列がいくつ含まれるかを数えたい」 これ,ExcelでもVBAでも割と聞かれる事柄なのですが,いずれもこれを直接求める関数などはないので,確かに「?」となりやすいところなのかもしれません. ということで,Excel関数版とVBA版をそ…

VBAでピボットテーブルを作成する.

たまに「VBAでピボットテーブルを作成したい」と思うことがあるのですが,その方法をしょっちゅう忘れるので,会社でも見れる・コピペできるようにここにメモしておきましょう――あまり発生しない案件なのですが. なお,これは他のプロシージャからの呼び出…

リボンのアイコンをファイルとして保存する(6)

つづき misora05.hatenablog.com 今回は,前回の内容を踏まえ,入手したファイルをから実際にアイコンを抽出するコードを書いてみましょう. コードを実際に載せる都合上,少々長めになりますがご容赦を. 手に入れたファイルを処理してみよう. "imageMSO.t…

リボンのアイコンをファイルとして保存する(5)

つづき misora05.hatenablog.com 今回は,前回手に入れたファイルを見て,どう扱うべきかを考えてみます. 手に入れたファイルを見てみよう! "imageMSO.txt" これは単純なTSVファイルなので,Excelに取り込んで中身を見てみましょう. 見たところ,idMso列…

リボンのアイコンをファイルとして保存する(4)

つづき misora05.hatenablog.com imageMSOの一覧を探す これでimageMSO属性値が示す画像は,Office単体でもファイルとして保存できることがわかりました. あとはimageMSOの一覧をどこかで探してくればよいのですが,これも実のところ難問だったりします. M…

リボンのアイコンをファイルとして保存する(3)

つづき misora05.hatenablog.com 前回の考察を踏まえて,今回は実験用のコードを記述してみます. 実験用コード Excel VBAで単純にやってみた. アイコンの名前(imageMSO属性値)は"Copy",アイコンのサイズは,32 * 32 を想定しています. Public Sub TEST_S…

リボンのアイコンをファイルとして保存する(2)

つづき misora05.hatenablog.com 前回は,リボンのアイコンをファイルとして保存するに際して必要な「前提」について述べました. 今回からは「実践」に入ります. そのために何を使えばいいのか これがMicrosoft Office単体でできれば,まぁもちろん言うこ…

リボンのアイコンをファイルとして保存する(1)

Microsoft Officeのリボンで使われているアイコン群を,何らかの形式の画像ファイルに保存できないものかと考えて,色々試してみた話です. 先に結論から言うと,これらのアイコンをBMP/ICO形式のファイルとして各個保存することができました. 以下,その経…

正規表現関数を作ってみよう!@Excel (3)

前回に引き続き,正規表現関数を作成してみましょう. ただ,VBAで使うRegExpオブジェクトに用意されているメソッド・プロパティの都合上,前回のようには単純にはいかなくなってしまいます. 指定した正規表現パターンに一致した個数を数える. Execute メ…

正規表現関数を作ってみよう!@Excel (2)

前回の続き. misora05.hatenablog.com 今回は実際に正規表現関数を作成してみましょう. なお,命名方法は,.NET FrameworkのSystem.Text.RegularExpressions名前空間の皆様に倣うことにしましょう. Regex.IsMatch 正規表現と一致する対象が入力文字列内で…

正規表現関数を作ってみよう!@Excel (1)

Excelの七不思議の一つが,「なぜか頑なに正規表現をサポートしない」なんですよね――検索でも関数でも. あれほど強力な技術をなぜ採用しないのか,ちょっと理解ができません. 理由の一つが,「正規表現を詳解しようと思ったら350-500ページもある本(↓)でぶ…

VBAによるタスク操作(API不使用)

Excelに限らず,VBAでWindowsのタスク・プロセスの操作をしようと思ったら,まずはWindows APIを叩くことを考えるのではないかと思います. まぁ,それも道理ですよね――そのような機能,VBAやExcelには用意がありませんし,「VBAでシステム関連の情報を取得…

VBAの実行が不可解に中断される現象と,その解決法

仕事中に引っかかったのでメモ. VBA/VBEのバグだと思うんだけど,Microsoftの技術情報には掲示がなく,ハマりました. 現象 (再現画像は用意できませんでした;発生要因わからないんだもん.) VBAのコード実行中,ブレークポイントが設定されていないにもか…