カテゴリー
開発・Web制作

Excel で AllowFiltering を指定するとシートが保護されない(Powershell)

Powershell から COM Object 経由で Excel のシート保護をする(Protect メソッドを呼ぶ)時に、AllowFiltering や AllowUsingPivotTables を指定しようとするとシートが保護されない問題が発生しました。Optional 引数のデフォルト値の指定方法に癖があるようです。それの対処法を紹介します。

カテゴリー
パソコン/Mac

個人用マクロブックの作り方

Excel で個人用マクロブック(PERSONAL.XLSB)というものが存在します。作成したマクロを実行できるようにしたいが、個人用なのでファイル自体には含めたくない場合に使用します。この個人用マクロブックの簡単な作り方を紹介します。

カテゴリー
パソコン/Mac

「リンクされた図」があるとマクロが遅くなる問題の対策

Excel でマクロを実行した際、日によって遅くなる時があるなあとぼんやりと考えていたのですが、いい加減時の流れのせいにするのはやめて本腰を入れて調べたところ、どうやらリンクされた図が貼ってあるブックを開いていると遅くなることが分かりました。

カテゴリー
パソコン/Mac

Evaluate を使うと2回実行されてしまう(Excel VBA)

Excel VBA には Evaluate というメソッドが存在しています。ざっくりいうと、セルにいれるような数式の実行結果を返してくれるものです。SUM のような標準で用意されているワークシート関数はもちろんですが、数式には UDF(ユーザー定義関数。マクロの Function とか Sub とか)を入れることも可能です。しかし、なぜか Evaluate に UDF を渡すと2回呼び出されてしまいます。

カテゴリー
ツール

Excel 全シートのカーソルを左上のセルに移動するマクロ

Excel は保存時にカーソルの位置も記録されるため、開き直した時に変なところにカーソルがあると気になってしまいます。提出する書類とかだと毎回カーソルを左上に持っていくようにしている方も多いのではないでしょうか。

私はそれ用のマクロを作って使っているのですが、環境が変わるたびに(特にデータ持ち込みしにくい場合)導入するのが面倒なのでここで公開します。※インターネット繋がらない環境だと詰みですが。