プロが教えるわが家の防犯対策術!

Userformを閉じて開く時、一瞬閉じて開くのがわからないようにする方法はありませんか。
閉じて開いて新しい情報を取得してます。
よろしくお願いします。

質問者からの補足コメント

  • 補足します。

    Userformを開いてExcelの値をlabelに表示してます。
    spinbuttonを使用しlabel1とlabel2の合計金額を合わせ、合わない場合、label1の背景色を変更しいます。
    最初開いた時は正常に作動しますが、何回かspin buttonで上げ下げをしていると背景色が変わりません。再度user formを開くと正常に背景色の変更が行えます。
    Userformで値を再取得しなくても背景色が変化するようにしたいのですが上手くいきません。

      補足日時:2023/06/26 14:06
  • 補足です。

    皆様回答ありがとうございます。

    Userform Initializeでシートのデータを読み込みUserform.showで表示させています。
    スピンボタンを押し一通り実行すると背景色が変化しません。showのイベントが切れてしますからかと考えますが解決方法が考えつきません。

      補足日時:2023/06/26 16:25

A 回答 (5件)

No2です。



>何回かspin buttonで上げ下げをしていると背景色が変わりません。
そちらの原因を探して、修正するほうが簡単そうですね。
当方で簡単な例で試してみましたが、スピンボタンが効かなくなったり背景色が変更できないなどの事象は発生しませんでした。

スピンボタンで値の表示も変更していると想像しますけれど、そちらの処理はきちんと動作しているのでしょうか?
そちらも停止してしまうのなら、イベントがとれていない可能性がありそうです。
(どこかの操作でイベントを停止して、そのままになっているとか・・)

値は変更されていて、背景色の変更だけが動作しないのであれば、処理自体は実行されているものと思われますので、背景色を処理する部分について見直してみれば、原因がわかるのではないかと想像しますけれど・・・
背景色を決定する部分に、何らかの勘違いが混入しているのではないでしょうか。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
もう一度コードの見直しをし解決しました。
原因は色を解除する時のコードでした。

お礼日時:2023/06/30 18:45

こんにちは


スピンボタンのイベントは何をお使いですか・・・

例えばスピンボタン1のDownボタンを押してlabel1のBackColorを変える場合

Private Sub SpinButton1_SpinDown()
Dim r As Integer, g As Integer, b As Integer
Randomize
r = Int((256) * Rnd)
g = Int((256) * Rnd)
b = Int((256) * Rnd)

Label1.BackColor = RGB(r, g, b)

End Sub

これは押す度にランダムに色が変わります
この処理に条件を付けて指定のBackColorを指定すれば変わるはずです

>showのイベントが切れてしま は無いと思います

Userform.showで表示させUserform Initializeでシートのデータを読み込みしています・・ですね

ちなみに データを初期化するだけでしたらUserform Initializeを呼べば良いです(根本的な解決にはならないと思いますが)
Call UserForm_Initialize
    • good
    • 0

>閉じて開いて



はイベントとして何を用いているのでしょう?
その辺の情報としてコードの提示は不可能なのでしょうか?
    • good
    • 0

こんにちは



また開くのなら、フォームを閉じる必要があるのでしょうか?

>閉じて開いて新しい情報を取得してます。
フォームを閉じないと取得できない情報というのが、想像できませんけれど。
    • good
    • 0

例えば、そのユーザーフォームの画像を、枠無しのウィンドウで同じ場所に表示しとくとか。


どっちが上になろうが、分からないかも。


> 閉じて開いて新しい情報を取得してます。

そんな変な事してるから、さらに変な処理が必要になります。
上で表示した画像が悪さとかしたら、もっと変な処理入れる?

フォームの内容を更新できるように、再設計するのが真っ当だと思う。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています