查看: 21  |  回复: 0
  VBA代码 ListToRng
楼主
发表于 2025年3月18日 10:11
Sub ListToRng(lst As MSForms.ListBox, rng As Range)
    ' 把一个listbox控件 选中的多行数据 输出到指定rng区域(左上角)
    Dim i, j, k
    ReDim arr(0 To lst.ListCount - 1, 0 To lst.ColumnCount - 1)
    
    For i = 0 To lst.ListCount - 1    '循环行
        If lst.Selected(i) Then    '判断选中的行
            For j = 0 To lst.ColumnCount - 1    '循环列 写入结果
                arr(k, j) = lst.List(i, j)
            Next
            k = k + 1
        End If
    Next
    
    If k > 0 Then    '只有选中行不为空时才会输出
        rng.Resize(k, UBound(arr, 2) + 1) = arr
    End If
End Sub


您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2025 MaNongKu.com