データがExcelで開かれるVB6でプログラムを作成しています。何千行ものデータがあり、フィルター オプションを使用して特定のデータを表示しています。私が疑問に思っているのは、フィルターをクリックしなくても、Excel シートを開くたびに常にフィルター オプションをオンにすることができるかどうかということです。フィルター機能をクリックするのは大したことではありませんが、他の人が使用するので、シートが表示されるたびに各列の最初の行に常にこのオプションがあると便利です. これが理にかなっていることを願っています:/ありがとう
これは私のコードです:
Private Sub cmdReports_Click()
Dim ExcelObj As Object
Dim ExcelBook As Object
Dim ExcelSheet As Object
Dim i As Integer
Set ExcelObj = CreateObject("Excel.Application")
Set ExcelBook = ExcelObj.WorkBooks.Add
Set ExcelSheet = ExcelBook.WorkSheets(1)
With ExcelSheet
.AutoFilterMode = True
For i = 1 To ListView1.ColumnHeaders.Count
.cells(1, i) = ListView1.ColumnHeaders(i).Text
Next i
For i = 1 To ListView1.ListItems.Count
.cells(i + 1, 1) = ListView1.ListItems(i).Text
.cells(i + 1, 2) = ListView1.ListItems(i).SubItems(1)
.cells(i + 1, 3) = ListView1.ListItems(i).SubItems(2)
.cells(i + 1, 4) = ListView1.ListItems(i).SubItems(3)
Next
End With
ExcelObj.Visible = True
Set ExcelSheet = Nothing
Set ExcelBook = Nothing
Set ExcelObj = Nothing
End Sub
.AutoFilter プロパティをセルに追加しようとしましたが、エラーが発生します。