Excel VBA質問箱 IV

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

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


6308 / 76734 ←次へ | 前へ→

【76027】Re:(Excel2003)検索後、ListBoxに行抽出できない
発言  kanabun  - 14/8/24(日) 21:35 -

引用なし
パスワード
   ▼くら さん:

>Sheet2に商品名、型番、機番、商品コードを約500行ほど入力しております。
>Sheet1にフォームコントロールボタンを描写し、このボタンを押すと検索窓(TextBox1,CommandButton1,ListBox1)が開くかんじです。
>ここからTextBox1に商品名(A列)または商品コード(D列)の一部を全角で入力し、CommandButton1を押すとSheet2を参照し、一部でも合致した行に含まれる4列のデータすべてをListBox1に抽出表示したいというわけです。部分合致なので複数行の表示を想定し、ListBox1は横長となっています。

> >Sheet1にフォームコントロールボタン

と書いてあるのに、あっち向いてホイッ のような発言で申し訳ないのですが、
フォームコントロール ではなく ユーザーフォーム でのたたき台です。

以下は UserForm1のコードです。
メニュ−[挿入]-[UserFormの挿入]でUserForm1を挿入し、
そこに

 TextBox1
 CommandButton1
 ListBox1

を配置して お試しください。

'-----------------------------------------------------------
Option Explicit
Private FRange As Range    'FilterRange
Private WkSheet As Worksheet '作業シート(非表示)

Private Sub UserForm_Initialize()
  Set FRange = Worksheets(2).[A1].CurrentRegion
  On Error Resume Next
  Set WkSheet = Worksheets("Temp")
  On Error GoTo 0
  If WkSheet Is Nothing Then
    With Worksheets
      Set WkSheet = .Add(After:=.Item(.Count))
    End With
    WkSheet.Visible = xlSheetHidden
  End If
  ListBox1.ColumnCount = 4
End Sub

Private Sub CommandButton1_Click()
 Dim ss As String
 Dim col As Long
  ss = TextBox1.Text
  If Len(ss) < 1 Then Exit Sub
  If IsNumeric(ss) Then col = 4 Else col = 1
  FRange.AutoFilter col, "*" & ss & "*"
  If FRange.Columns(1).SpecialCells(xlVisible).Count > 1 Then
    WkSheet.UsedRange.Clear
    Intersect(FRange, FRange.Offset(1)).Copy WkSheet.[A1]
    ListBox1.List = WkSheet.[A1].CurrentRegion.Value
  End If
  FRange.AutoFilter
End Sub

5 hits

【76026】(Excel2003)検索後、ListBoxに行抽出できない くら 14/8/24(日) 21:11 質問
【76027】Re:(Excel2003)検索後、ListBoxに行抽出... kanabun 14/8/24(日) 21:35 発言
【76028】Re:(Excel2003)検索後、ListBoxに行抽出... くら 14/8/24(日) 23:19 質問
【76029】Re:(Excel2003)検索後、ListBoxに行抽出... kanabun 14/8/24(日) 23:28 発言
【76031】Re:(Excel2003)検索後、ListBoxに行抽出... くら 14/8/24(日) 23:44 回答
【76033】Re:(Excel2003)検索後、ListBoxに行抽出... kanabun 14/8/24(日) 23:51 発言
【76034】Re:(Excel2003)検索後、ListBoxに行抽出... くら 14/8/25(月) 0:32 回答
【76030】Re:(Excel2003)検索後、ListBoxに行抽出... kanabun 14/8/24(日) 23:43 発言
【76032】Re:(Excel2003)検索後、ListBoxに行抽出... くら 14/8/24(日) 23:49 回答

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