
No.1ベストアンサー
- 回答日時:
ぶどうとさん、おはようございます。
ご質問を読むとListviewに表示する以前に問題が少々あるように思います。
それは、TextBoxです。
テキストボックスに入力された文字が日付に変換できるかなどを検証する必要があります。また、(画像を見る限りシリアル値のようですが)データがシリアル値なのかも問題になるかもです。
TextBox1 から TextBox2までの(日付)範囲でリストを(F列を対象)抜き出しListviewに表示
コマンドボタンに
Dim i As Long, j As Long, cnt As Long
Dim stDate As Date, endDate As Date
Dim findRow() As Variant
'文字が日付に変換できるかなどを検証
If Not IsDate(TextBox1.Value) _
And Not IsDate(TextBox2.Value) Then
MsgBox ("日付を正しく入力してください")
Exit Sub
End If
'ListView1をクリア
ListView1.ListItems.Clear
'TextBox1と2を比較(大小を決める)
If CDate(TextBox1.Value) <= CDate(TextBox2.Value) Then
stDate = CDate(TextBox1.Value)
endDate = CDate(TextBox2.Value)
Else
stDate = CDate(TextBox2.Value)
endDate = CDate(TextBox1.Value)
End If
'条件に一致した行番号を配列に入れる
'ソートが必要な場合、行番号配列作成前に
For i = 4 To Cells(Rows.Count, "F").End(xlUp).Row
If stDate <= Cells(i, "F").Value _
And endDate >= Cells(i, "F").Value Then
ReDim Preserve findRow(cnt)
findRow(cnt) = i
cnt = cnt + 1
End If
Next
'配列の値を元にシートのリストをListView1に表示
For i = 0 To UBound(findRow)
With ListView1.ListItems.Add
.Text = i + 1
For j = 1 To 4 'カラム分繰り返す
.SubItems(j) = Cells(findRow(i), "B").Offset(, j).Value
Next j
End With
Next i
カウント変数が分かり難かったらごめんなさいね
シートオブジェクトは指定していませんので明示してください。
お休みのところ本当にありがとうございました。
思い通りに作成していただきありがとうございました。
ListViewは検索してもなかなか思うようなのが
なく困っておりました。これをもとに
幅がひろがるとおもいます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ListView重複データ削除 2 2022/08/05 18:12
- Visual Basic(VBA) Excel VBAのリストボックスの値を他のフォームに反映させる方法を教えてください。 2 2023/07/14 14:06
- Excel(エクセル) Powershell エクセル検索 完全一致の方法 1 2022/06/05 20:19
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/20 14:46
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/17 11:59
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/21 13:29
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- Excel(エクセル) アンケート集計用VBAについて教えて下さい。 約100人にアンケート内容が入ったExcelファイルを 1 2022/07/27 13:12
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/20 10:00
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/02/21 11:19
このQ&Aを見た人はこんなQ&Aも見ています
-
ListView 項目の選択/選択解除について
Visual Basic(VBA)
-
リストビューの項目の内容を変更する方法は?
Visual Basic(VBA)
-
VBAでListviewの並べ替えを数値で行なうには
Excel(エクセル)
-
-
4
vba listviewにおけるtextのAlingmentを中央にしたい
Excel(エクセル)
-
5
Listviewのデータを上から順番に取得 VBA
Visual Basic(VBA)
-
6
VBAでListViewのフォントを変更する方法
Visual Basic(VBA)
-
7
VBA listviewで全部のシートを検索する VBA2ヶ月の素人が以下の仕事を貰いあたふたしてま
Excel(エクセル)
-
8
ListViewの複数選択について
Visual Basic(VBA)
-
9
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
10
ListView内の検索 VB6
Visual Basic(VBA)
-
11
vba ListViewの選択色について教えてください
Excel(エクセル)
-
12
ListViewの画面の更新
Visual Basic(VBA)
-
13
Excel VBA ListViewサブアイテムの文字色
その他(プログラミング・Web制作)
-
14
ListViewで、非表示列って作れますか?
Visual Basic(VBA)
-
15
UserForm1.Showでエラーになります。
工学
-
16
ユーザーフォームでTextBox1にカーソルを移動したい
Excel(エクセル)
-
17
VBA ListViewの選択Itemを削除する
Excel(エクセル)
-
18
vba Listviewでのチェックボックスのイベントを教えてください
Excel(エクセル)
-
19
ListViewで複数選択された項目を一度に削除する方法
Visual Basic(VBA)
-
20
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】オートフィルター を...
-
【ExcelVBA】5万行以上のデー...
-
Vba セルの4辺について罫線が有...
-
Vba Array関数について教えてく...
-
【マクロ】シートの変数へ入れ...
-
vbsでのwebフォームへの入力制限?
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
ワードの図形にマクロを登録で...
-
testファイル内にある複数のpng...
-
【マクロ】開いているブックの...
-
【ExcelVBA】値を変更しながら...
-
【マクロ】並び替えの範囲が、...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
エクセルの改行について
-
ダブルクリックで貼り付けた画...
-
VBAでFOR NEXT分を Application...
-
vbaマクロについて
-
エクセルのVBAコードと数式につ...
-
【マクロ】変数を使った、文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba セルの4辺について罫線が有...
-
vbsでのwebフォームへの入力制限?
-
【ExcelVBA】5万行以上のデー...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
【マクロ】並び替えの範囲が、...
-
エクセルの改行について
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
VBAでCOPYを繰り返すと、処理が...
-
VBA ユーザーフォーム ボタンク...
-
エクセルのVBAコードと数式につ...
-
エクセルのVBAコードについて教...
-
[VB.net] ボタン(Flat)のEnable...
-
【マクロ】変数を使った、文字...
-
改行文字「vbCrLf」とは
-
質問58753 このコードでうまく...
-
【マクロ】シートの変数へ入れ...
-
ワードの図形にマクロを登録で...
-
算術演算子「¥」の意味について
おすすめ情報