|
こんにちは。かみちゃん です。
>ところで、後問題として残っているのは、
>>1.ListBoxに一旦全体のデータを反映させるのか?
>これは前にも申し上げたように一応表示させたいです。
やっぱりわかりません。一応というくらいの簡単なコードではないですよ。
無意味(と思われる)コントロールを、UserForm上に配置するのは、スペース
の無駄使いと思うのですが?
私は、表示させる必要はないと思いますし、すでにできていますよね?
それとは、別にTextBox1に検索値を入力し、CommandButtonをClickすると、
ListBox1からではなく、再度、テキスト.txtからListBox2(ComboBoxでも可)
に条件に部分一致するデータだけをAddする形ではいけませんか?
>>2.検索条件に一致したもののListBoxはComboBoxにではいけませんか?
>お勧めでやってみます
決して、押し付けているわけではありませんので、念のため。
私なら、UserForm上での配置スペース、コードの記述の簡単さから、操作上の
制約がない(複数選択はしない)こちから、総合的に判断してComboBoxでいい
のでは?と申し上げています。
>>3.全角半角、大文字小文字統一処理は可能か?
>上のコードのSub Sample1()実行してみましたが
>いまいち使い方が解りませんsample1を実行すると
>MsgBoxが表示され元データ 6byte等表示されますが
>エクセル上で(テキスト.txt登録前)に変換させるプログラムですか?
そうなのですが、いろいろな変換パターンを記述しました。
MsgBox上で等幅フォントでない場合は、表示がわかりづらいかもしれません。
全角・半角、大文字・小文字を検索する場合(今回は、Findメソッド等は使え
ません)何かに統一しないといけないのです。
まず、それをきちんと理解してください。だから、後回しと申し上げました。
>>4.2.で反映されたListBox(またはComboBox)からセルへの転記は、CommandButtonをClickしたとき?
> ハイそうです。
ComboBox1とCommandButton1をUserForm上に配置して、UserFormモジュールに
以下のコードを記述して動作確認してみてください。
ComboBoxから選択して、CommandButtonをClickすると、MsgBoxで選択された
値が表示されると思います。
Private Sub UserForm_Initialize()
Me.ComboBox1.AddItem "AAA"
Me.ComboBox1.AddItem "BBB"
End Sub
Private Sub CommandButton1_Click()
MsgBox Me.ComboBox1.Value
End Sub
>操作を行ったsheetのA1からのデータなんですが
>コード.xlsを読んでいない
>下記間違ってます
すみません。私、間違っていました。
以下のように★の行を追加してください。
Private Sub UserForm_Initialize()
Dim ws As Worksheet
Set ws = Workbooks("コード.xls").Sheets("Sheet1")
With Range("A1", Cells(Rows.Count, 3).End(xlUp))
Me.ListBox1.ColumnCount = .Columns.Count
Me.ListBox1.ColumnWidths = "30 pt;50 pt;40 pt"
ws.Activate '★
Me.ListBox1.RowSource = .Address
ThisWorkbook.Activate '★
End With
End Sub
|
|