Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


43024 / 76732 ←次へ | 前へ→

【38769】Re:CommandButtonを非活性化/活性化する...
発言  sin  - 06/6/9(金) 18:12 -

引用なし
パスワード
   ▼mutu さん:
>ご回答ありがとうございました。
>
>これでやってみようと思ったのですが、
>また新しい問題にぶつかってしまいました。
>
>教えていただいた、下記のコードですが、
>
>Private Sub UserForm_Initialize()
>    
>    CommandButton1.Enabled = False
>
>End Sub
>
>Private Sub TextBox1_Change()
>
>  If TextBox1.Text = "1234" Then
>    CommandButton1.Enabled = True
>  End If
>
>End Sub
>
>
>このコードを参考に、
>UserFormを使用しないで作るためには、
>
>Private Sub UserForm_Initialize()
>
>を
>
>Private Sub Worksheet_Activate()
>
>にするだけでよいのでしょうか?

ユーザーフォームと同様にシートがアクティブになる度にCommandButton1.Enabled を
Falseにしたいというのであればそれでいいと思います。
一度だけにしたいのであれば、
Private Sub Workbook_Open()

  Worksheets("Sheet1").CommandButton1.Enabled = False

End Sub
を使えばいいと思います。


>
>また、TextBox内は西暦を入力したく、
>半角数字4文字のみ受け付けるようにしたいと思っています。
>
>そこで、TextBoxプロパティーの項目別設定において
>
>IMEMode を 2-fmIMEModeoff
>MaxLength を 4
>
>に設定しました。
>ただ、これだと半角数字1文字〜3文字までも入力受付してしまうと思うのですが、
>どのようにすれば、半角数字1文字〜3文字を弾く事ができるのでしょうか?
>ご回答、よろしくお願いします。

弾きたいタイミングで
  If Len(TextBox1.Text) < 4 Then
    MsgBox "文字数が足りません"
  End If
のような処理ではダメですか?
2 hits

【38734】CommandButtonを非活性化/活性化する方法 mutu 06/6/9(金) 10:36 質問
【38745】Re:CommandButtonを非活性化/活性化する... sin 06/6/9(金) 11:32 発言
【38758】Re:CommandButtonを非活性化/活性化する... mutu 06/6/9(金) 15:43 質問
【38768】Re:CommandButtonを非活性化/活性化する... ハチ 06/6/9(金) 18:08 発言
【38771】Re:CommandButtonを非活性化/活性化する... sin 06/6/9(金) 18:21 発言
【38772】Re:CommandButtonを非活性化/活性化する... ハチ 06/6/9(金) 18:32 発言
【38845】Re:CommandButtonを非活性化/活性化する... mutu 06/6/12(月) 12:50 お礼
【38769】Re:CommandButtonを非活性化/活性化する... sin 06/6/9(金) 18:12 発言

43024 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free