Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10全般 : Excel 2010)
EXCELシート上のコマンドボタンなどの大きさが変形することがある
投稿日時: 21/06/11 16:42:52
投稿者: HT

EXCELシート上のコマンドボタンやコンボボックスなどのパーツが、使用している最中に大きさがどんどん変形してしまうことがたまにあります。なぜ起きるのか、対策はありますか?

回答
投稿日時: 21/06/11 17:46:44
投稿者: QooApp

ボタンがある部分周辺のシート上のセル幅が変動してませんか?
 
ボタンサイズがセル幅より大きいとき、セル幅に収まろうと収縮することがあります。
セル幅自動調整とかやった時に巻き込み事故したことがあります。
 
自分は対策まで知らないので申し訳ないですが、自分ならセル幅影響のない位置に設置するとかかなあ。

回答
投稿日時: 21/06/11 17:52:14
投稿者: WinArrow
投稿者のウェブサイトに移動

原因は、セルの行高や列幅の変更時に大きさが変わります。
 
総称して、オブジェクト(コマンドボタン等)
を右クリックして「コントロールの書式設定」をクリック
「プロパティ」タブの
オブジェクトの位置関係の設定に依存しています。
 
ここを変更することで対応できます。

回答
投稿日時: 21/06/13 17:37:58
投稿者: Stray Dog

HTさん
私も恐らく同じ現象に悩まされております。
 
当方では、コマンドボタンを押す度に、
ボタンサイズが大きく or 小さくなったりしてしまうブックがあるのですが、
(そうならならないものもあります)
Workbook_Open に下記のように記載して、
起動時にボタンサイズを強制設定することにより対処しております。
配置ボタンごとにこのように書き込むと、
私の環境ではサイズ変動は起こらなくなりました。
(Windows7, Excel2013)
 

Worksheets("test").Activate
With ActiveSheet.CommandButton1
    .Height = 19.5
    .Width = 50
End With

とてもスマートとは言えないやり方ですね。
人様のスレッドに便乗する形で恐縮ですが、
スマートな解決策をご存知の方がいらっしゃったら、
提示して頂けると幸甚です。

投稿日時: 21/06/15 15:14:31
投稿者: HT

シートのセル巾、高さは変更していませんが、入力保護(プロテクト)をかけています
それが原因ということはないでしょうか?

回答
投稿日時: 21/06/15 16:26:59
投稿者: WinArrow
投稿者のウェブサイトに移動

HT さんの引用:
シートのセル巾、高さは変更していませんが、入力保護(プロテクト)をかけています
それが原因ということはないでしょうか?

 
そうですか・・・・・
状況がよくわかりませんので、
具体的な症状をよく観察してから、
再度、質問してみましょう。

投稿日時: 21/06/16 09:30:53
投稿者: HT

Stray Dogさん 質問です。「同じ現象」が起きていたとのことですが
セルの巾、高さが変更された際に起きましたか?

回答
投稿日時: 21/06/16 13:14:37
投稿者: Stray Dog

引用:
Stray Dogさん 質問です。「同じ現象」が起きていたとのことですが
セルの巾、高さが変更された際に起きましたか?

 
こちらの問題ブックでは
セルサイズの変更とは無関係に起こっています。

回答
投稿日時: 21/06/16 13:58:59
投稿者: QooApp

引用:

シートのセル巾、高さは変更していませんが、入力保護(プロテクト)をかけています
それが原因ということはないでしょうか?
 
こちらの問題ブックでは
セルサイズの変更とは無関係に起こっています。

 
普通にシート複製とか、配置座標移動ではボタンオブジェクトのサイズが変わることは経験がありません。
セル幅が変動すると巻き込みで小さくなったりはしますが。
 
入力保護で発生するかといえば直接的には無関係だと思います。
 
もしかしてなんですが、変形するタイミングで毎回新規作成されてませんか?
複製とかではなく、新規オブジェクトとして生成されてませんか?
 
であれば、毎回サイズが変わるという主張も表面的には理解できます。
イメージしている規定サイズとは違うサイズのオブジェクトがそこにある、という意味では主張は正しくなると思います。
 
それならば、事前に規定レイアウトにしたテンプレートシート作っておいて、複製で呼び出せばレイアウトが崩れることは無いと思います。
 
具体的な操作・内部挙動を一回整理してみてほしいです。
マクロの動作際中に変形するようであれば、デバッグモードでどのコマンドを実行直後に変形するか書いてほしいです。[/quote]

回答
投稿日時: 21/06/16 15:14:19
投稿者: Suzu

昔、組み込みOLEオブジェクトと、シェイプを多く使っているシートに対し
ブックを開いたり、シートをコピーしたタイミングで
そのシート内のオブジェクトの大きさが変わった経験があります。
 
 
プロパティーの 「セルに合わせて移動やサイズ変更」について、
【変更しない】 にしていても 発生した記憶があります。
(グループ化等もしていましたが、少なくとも グループ化の親については 変更しない でした。
   グループ化 を解除し、一つ一つ調べてはいません)
 
どうしても使用しなければならなかったのですが、
挿入する、OLEオブジェクトのファイル側で シェイプの代わりの線等を配置し対応しました。
 
もともと、お絵かきソフトではないので、しょうがないか〜 としか思いませんでした。
 
どうしても、Excel側で対応したいのなら、
範囲を選択し、図として貼り付け や、スクリーンショット として貼り付けくらいでしょうか。

回答
投稿日時: 21/06/16 23:21:50
投稿者: たらのり

こんばんは
 
僕もしばらく同じような現象に,最近は諦めの境地で
もう悩みもしないのですがww,もしかすると似たような
現象に遭っていました(酒気帯びです)。
 
僕の場合ですが,シート上に並べたコマンドボタンを
押下して処理を開始すると,処理中は押下したボタンの
上に一回り小さなボタンが重なるように(Top,Left の
座標は同じ位置)表示され,実行が終わると元に戻ると
いった現象がありました。ActiveX のボタンです。
 
シートには複数のボタンが並べてあり,この現象が起こる
のは押下したボタンのみです。
 
ボタンを配置したシートの列幅や行高は,処理によって
変えていません。
 
いま使用している PCの画面が高解像度なのですが,
小さくなって重なったボタンの大きさの比率が
何となくですが解像度の比と同じくらいなのかなぁと,
勝手に納得(何を?! ww)していました。
 
この現象よりも,以前から使用しているアプリの
メニューなどのフォントが滲んでしまうことの方が
余ほど気になるので,このボタンの件はまったくどうでも
よいのですが(やはり解像度の問題のようです)。
 
……と思って,昨日 Windows Update をした PCで
現象を確認してみると,そのボタンが二重に表示される
現象が起こらなかったのです(治ったのかな? 僕の目がw)。
明日以降,またどうなっているかは分かりませんが。
 
もしかしたらスレ主さんの現象もアップデートで解決され
てはいないかなと,希望的観測。
 

回答
投稿日時: 21/06/17 07:41:38
投稿者: mattuwan44

ども。
 
ブックが壊れている可能性はないでしょうか。
シートやマクロを新しいブックに移してみて試してみては?
最悪、新しいブックで、同じものを作ってみて、
マクロをコピペでいかがでしょうか?

回答
投稿日時: 21/06/17 08:20:10
投稿者: QooApp

たらのりさんの現象はメモリ不足でアプリケーションが瞬間的にフリーズしてるだけな気がしますが、32bit版とかみたいになんらかのスペックが制限されてませんか?
 
私のエクセルも処理が大きめのやつだと、マクロ含まなくてもセルのコピーをした瞬間、ディスプレイのフリーズとレイアウトクラッシュ(5秒くらいで復帰)は起きます。パソコンは潤沢な性能でも32bit版なもので…
 
マクロの最初にスクリーンアップデートを無効にしてみてはいかがでしょうか。
画面更新ONだと見た目がクラッシュする事は自分は経験あります。仰るように復帰しますが。

回答
投稿日時: 21/06/17 09:57:40
投稿者: たらのり

おはようございます
 
昨夜に投稿した現象が発生する PCのエクセルは Microsoft365 の
64ビット版で,メモリは 8G です。
 
スクリーンの再描画の抑制をしていたかは覚えていませんが,
ブックの内容は変更しないので(参照のみでテキストファイルを
作成する)問題なしかと思いましたが,ボタンの押し込み・戻る
がありますねww
 
今日は在宅勤務なので,当該 PCの今の状態は確認できませんが,
別の PCでは以前から同様の現象は起こっていなかったことから,
昨夜も書いたとおり,もう気にしないので深く考えませんでしたが,
解像度の問題なのかなと想像しました。おそらくハズレでしょう。
 
いちばんお伝えしたかったことは,Windows Update でシレッと
直ることがあるのでということでした。
 

投稿日時: 21/06/19 08:03:40
投稿者: HT

問題のEXCEL BOOK以外でも、依然、同様に、コマンドボタンなどが異常に大きく(又は小さく)なる
ことが起きていましたが、最近は起きていません。とういうことは、たらのりのご指摘のWINDOWS
アップデートで解決したと考えるのが自然と思います。
この現象が起こる基本的な原因(セル巾、高さの変更)の他、アップデートやメモリの状況などでも
起こりうることがあることがわかりました。ありがとうございました