'如题,以下是根据鼠标选择而填入的,'如何改才把ListView中复选框为True的数据填入form23.MSFlexGrid1呢?'===========================================
'来自"蚜虫"兄的代码
Dim SQL As String
    Dim s As String
    Dim i As Long
    For i = 1 To ListView1.ListItems.Count
        If ListView1.ListItems(i).Checked = True Then
            s = s & "'" & ListView1.ListItems(i).Text & "',"
        End If
    Next
    If Len(s) > 0 Then
        s = Left(s, Len(s) - 1)
'===================================================================
If Me.ListView1.ListItems.Count <= 0 Then Exit Sub
form23.MSFlexGrid1.Rows = form23.MSFlexGrid1.Rows + 1
form23.MSFlexGrid1.TextMatrix(form23.MSFlexGrid1.Rows - 1, 0) = form23.MSFlexGrid1.Rows - 1
form23.MSFlexGrid1.TextMatrix(form23.MSFlexGrid1.Rows - 1, 1) = Me.ListView1.SelectedItem.SubItems(1)
form23.MSFlexGrid1.TextMatrix(form23.MSFlexGrid1.Rows - 1, 2) = Me.ListView1.SelectedItem.SubItems(2)
form23.MSFlexGrid1.TextMatrix(form23.MSFlexGrid1.Rows - 1, 3) = Me.ListView1.SelectedItem.SubItems(3)
form23.MSFlexGrid1.TextMatrix(form23.MSFlexGrid1.Rows - 1, 4) = Me.ListView1.SelectedItem.SubItems(4)
form23.MSFlexGrid1.TextMatrix(form23.MSFlexGrid1.Rows - 1, 5) = Me.ListView1.SelectedItem.SubItems(9)
form23.MSFlexGrid1.TextMatrix(form23.MSFlexGrid1.Rows - 1, 6) = Me.ListView1.SelectedItem.SubItems(10)

解决方案 »

  1.   

    Private Sub Command1_Click()
        Dim lvi As ListItem, i As Long
        For Each lvi In ListView1.ListItems
            If lvi.Selected = True Then
                Form23.MSFlexGrid1.Rows = Form23.MSFlexGrid1.Rows + 1
                i = Form23.MSFlexGrid1.Rows - 1
                Form23.MSFlexGrid1.TextMatrix(i, 0) = i
                Form23.MSFlexGrid1.TextMatrix(i, 1) = lvi.SubItems(1)
                Form23.MSFlexGrid1.TextMatrix(i, 2) = lvi.SubItems(2)
                Form23.MSFlexGrid1.TextMatrix(i, 3) = lvi.SubItems(3)
                Form23.MSFlexGrid1.TextMatrix(i, 4) = lvi.SubItems(4)
                Form23.MSFlexGrid1.TextMatrix(i, 5) = lvi.SubItems(9)
                Form23.MSFlexGrid1.TextMatrix(i, 6) = lvi.SubItems(10)
            End If
        Next
    End Sub