|
▼グライダーマン さん:
こんばんは。
> A B C D E
> 日付 No 設備名 処置内容 交換部品
>3/1 1 ・ ・ ・
> ・ 3 ・ ・ ・
>3/3 1 ・ ・ ・
> ・ 7 ・ ・ ・
> ・ 2 ・ ・ ・
> ・ 4 ・ ・ ・
> ・ 3 ・ ・ ・
> ・ ・ ・ ・ ・
>
>上記のような感じで下方向(Sheet1)へ毎日入力していきます。
>そこでユーザーフォームのテキストボックスに検索したい番号(B列)を入力し、
>その番号全部の行を(Sheet2)に貼り付けたいと思います。
>(上記の例では1を条件にすれば3/1と3/3の行がSheet2に貼り付けられます。)
>VBAに挑戦してやっと3ヶ月になりますが、どうも難しくてわかりません。
>どなたか教えてください。
ユーザーフォーム(Userform1)には、
テキストボックス(Textbox1)
コマンドボタン(Commandbutton1)
のふたつのコントロールを貼付けて下さい。
テキストボックスに検索番号を入力します。
コマンドボタンのクリックで検索開始です。
標準モジュールに
'=========================================================
Sub main()
UserForm1.Show vbModeless
End Sub
フォームモジュールに
'=========================================================
Private Sub CommandButton1_Click()
Worksheets("sheet2").Cells.ClearContents
With Worksheets("sheet1")
.[j1].Value = .[b1].Value
.[j2].Value = TextBox1.Text
With .Range("a1", .Cells(.Rows.Count, 1).End(xlUp)).Resize(, 5)
.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=[sheet1!j1:j2], _
CopyToRange:=[Sheet2!a1]
End With
End With
End Sub
アドバンスフィルタを使いました。
Sheet1のセルJ1〜J2が検索条件入力セルになっています。
これはどこでもかまいません。
確認してみて下さい。
|
|