エクセルのアドインやアドイン作成用のファイルサイズを小さくする方法(手動)とインポート後のエラー対処
エクセルのアドインやアドイン作成用のファイルサイズを小さくする(元に戻す)
アドイン作成は普通のエクセルのファイルで行うんだけど
いじっているとファイルサイズがどんどん無駄に大きくなる
解決法は
新しくファイルを作りなおす
これが無駄に大きくなっている状態
ファイルサイズ500KB
新しくファイルを作りなおすと
500KBが150KBまで小さくなる
書いてある文章やシートの枚数は全く同じでもここまで違ってくる
作り直す手順は
元のファイルのすべてのモジュールをエクスポートしておく
ファイルを新規作成して元のファイルのシートをコピーする
エクスポートしておいたファイルをインポートする
リボンのボタンの設定
エクスポートは問題ない
ファイルを新規作成してシートをコピーするも問題ない
エクスポートしたファイルのインポート
すべてインポートする、これも問題ないはずなんだけど
マクロを実行すると
ユーザー定義型は定義されていません。
のエラー、何のことだかわからない
クラスモジュールに書いたスライダー作成に関係する
Private WithEvents exSL As MSComctlLib.Slider
の「MSComctlLib.Slider」をそんなの知らないよって言っているみたいで
候補に出ていたMSComctlLibが出てこなくなっている
いつもの様にググって
ここを見ると参照設定をするといいみたい
ツール→参照設定で
Microsft Windows Common Controls 6.0(SP6)これにチェックを入れる、これで動くはず
それにしても参照設定の一覧で出てくる1000個位のリスト
あれにはそれぞれ部品が入っているのかしら
実行したら違うエラー
今度のエラーは
メソッドまたはデータメンバが見つかりません。
スライダーの位置Left(x座標)を指定しているところでエラーになっている
スライダーのプロパティにLeftなんてものはないですって言っているみたい
そんなはずはないんだけどなあ
ツールボックスにも表示されているし
フォームの上にあるスライダーのプロパティでもLeftは表示されていた
Leftがわかんないならその次に指定しているTop(y座標)はどうか→
Topもわからないというので参照設定だけでは認識しきれていない感じ
わけがわからないままいろいろいじって見つけた解決法は
ツールボックスから新たにスライダーを作成する
これ
その後は作成したスライダーは削除してもいい
ツールボックスから一度作成すれば認識するみたい
こんなの気づかないYO
でもこれで動くようになった
最後はリボンのボタンの設定
アイコンの登録して
XMLの編集というかコピペ
アイコン用の画像登録
まずはようやく動くようになった新しいファイルを名前を付けて保存して閉じる
無駄に大きくなっている元のエクセルファイルも閉じておく
新しいファイルを
Custom UI Editor
で開いて
メニューのInsert→Office 2007 Custom UI Part
続いてInsert→Iconsでアイコンの登録
登録した(アイコン)画像は32x32のpng形式
画像ファイルの名前は英数字だけにした方がいい
これでエクセルのファイルにアイコンの登録ができた
保存して閉じる
次はリボンの設定に使うXMLの編集
使うアプリは
Office Ribbon Editor
無駄に大きくなった元のエクセルファイルと
さっきアイコン用の画像登録したエクセルファイルの二つを開く
RibbonX12をダブルクリックで編集画面になる↓
元のエクセルファイルのコードをコピー
新しい方へペースト
保存して閉じる
新しいファイルをエクセルで開いて
名前を付けて保存からアドインを選んで保存でアドイン完成
リボンの編集を頑張れば動的に部品の増減や変更ができるみたいなんだけど
エクセルVBAとの連携もあって難しい
どんな部品があるのかわもわかんないんだよなあ
関連記事