Excel VBA質問箱 IV

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

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


24134 / 76738 ←次へ | 前へ→

【57957】Re:TextBoxの文字変換設定
お礼  亜矢  - 08/9/23(火) 16:52 -

引用なし
パスワード
   ▼Hirofumi さん:
>>ユーザーフォーム上にあるTextboxに文字等を入力させる場合、
>>その文字が大文字全角や小文字半角とかいろいろあると、検索等で
>>問題が生じるため、入力文字はすべて半角大文字に設定しています。
>>下記はテキストボックスに入力した際に文字をそれに変換します。
>>
>>Private Sub TextBox1_Change()
>> TextBox1.Value = Trim(StrConv(TextBox1.Value, vbNarrow + vbUpperCase))
>>End Sub
>>
>>テキストボックスが5ヶ程度ならいいのですが、今回は70個程度の
>>テキストボックスがあります。上記のプログラムをTextbox1からTextbox70まで
>>書くのは最後の手段と考えています。
>> もっと簡単にまとめる方法を教えて頂きたいと思います。
>
>こんな事すれば初期目的は、達せらてますが?
>Changeイベントだけしか選べないのが疑問です?
>
>UserFormnoコードモジュールに記述
>
>Option Explicit
>
>'Groupの値取得クラスの配列
>Private clsGroup() As Class1
>
>Private Sub UserForm_Initialize()
>  
>  Dim i As Long
>  Dim j As Long
>    
>  'ClassにTextBoxを設定
>  For i = 0 To Controls.Count - 1
>    If TypeName(Controls(i)) = "TextBox" Then
>      j = j + 1
>      ReDim Preserve clsGroup(1 To j)
>      Set clsGroup(j) = New Class1
>      clsGroup(j).Box = Controls(i)
>    End If
>  Next i
>  
>End Sub
>
>Private Sub UserForm_Terminate()
>
>  Dim i As Long
>  
>  'Classを破棄
>  For i = 1 To UBound(clsGroup)
>    Set clsGroup(i) = Nothing
>  Next i
>  
>End Sub
>
>Classモジュールを追加して記述
>
>Option Explicit
>
>Private WithEvents txtBox As MSForms.TextBox
>
>Public Property Let Box(ByVal txtNewValue As MSForms.TextBox)
>
>  Set txtBox = txtNewValue
>  
>End Property
>
>Private Sub Class_Terminate()
>
>  Set txtBox = Nothing
>  
>End Sub
>
>Private Sub txtBox_Change()
>
>  With txtBox
>    If .Value <> "" Then
>      .Value = Trim(StrConv(.Value, vbNarrow + vbUpperCase))
>    End If
>  End With
>  
>End Sub
>
>尚、Classの名前は、ディフォルトのClass1のままにして有ります
ご指導の通り書き込みました。うまくいきました。
ありがとうございました。
>Changeイベントだけしか選べないのが疑問です?
Exitイベントも使っていますが、まだうまく理解できないのでChangeを利用しています。
0 hits

【57948】TextBoxの文字変換設定 亜矢 08/9/23(火) 6:51 質問
【57949】Re:TextBoxの文字変換設定 Hirofumi 08/9/23(火) 7:50 回答
【57957】Re:TextBoxの文字変換設定 亜矢 08/9/23(火) 16:52 お礼

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