返回列表 上一主題 發帖

[發問] VB6 MSFlexGrid 元件資料匯至 excel問題

[發問] VB6 MSFlexGrid 元件資料匯至 excel問題

VB6 中 有 MSFlexGrid 元件 內資料在匯出至Excel
一般模式都是用迴圈方式(程式碼如下)
    For i = 0 To MSFlexGrid1.Rows - 1
        For jNo = 0 To MSFlexGrid1.Cols - 1
          wshExcel.Cells(i + 1, j + 1) =  MSFlexGrid1.TextMatrix(i, j)
        Next cNo
     Next rNo

請問各位大大,要如何讓 MSFlexGrid可以像listbox元件一樣可以直接貼上
Listbox程式碼如下
    Set MyXlsApp = CreateObject("Excel.Application")
    MyXlsApp.Visible = True
    Set xlbook = MyXlsApp.Workbooks.Add
    Set xlsheet1 = xlbook.Worksheets(1)

    xlsheet1.Cells(1, 1).Value = "產品序號"
    xlsheet1.Cells(1, 2).Value = "功率"
    xlsheet1.Cells(1, 3).Value = "全距"
    xlsheet1.Cells(1, 4).Value = "檢驗時間"
   
    xlsheet1.Range(xlsheet1.Cells(1, 1), xlsheet1.Cells(UserForm1.ListBox1.ListCount, UserForm1.ListBox1.ColumnCount)).Offset(1, 0) = UserForm1.ListBox1.List

例如

xlsheet1.Range(x,y),offset)1,0)=MSFlexGrid1.XXXXXXX
是學程式而不是要程式,是進步的基礎

不好意思~ 我的方式也是用迴圈一個一個取...
可能幫不上什麼忙...
若是我回答,使您滿意,請您讓我知道!                  
若是我的回覆,您仍有其他見解,也請您不嗇指教!

TOP

閔大大出現了,呵呵
我也在其他網站找了很久,也都是用回圈的方式
是學程式而不是要程式,是進步的基礎

TOP

閔大大出現了,呵呵
我也在其他網站找了很久,也都是用回圈的方式
暗黑 發表於 2010/6/29 10:44 AM


呵呵呵~ 真不好意思!因為小弟沒有更好的方式... 都不敢出現!
如果暗黑兄您研究出更快的方式,也請暗黑兄您不嗇指導~
若是我回答,使您滿意,請您讓我知道!                  
若是我的回覆,您仍有其他見解,也請您不嗇指教!

TOP

'没其它的办法,只能用循环的方式读出数据,这和ListView控件差不多。不过可以先将数据读入数组,再通过数组写入Excel,毕竟Excel的VBA是最忌讳逐单元格操作的。
Dim arr(), lRow, lCol
Dim i, j
lRow = MSFlexGrid1.Rows
lCol = MSFlexGrid1.Cols
ReDim arr(1 To lRow, 1 To lCol)
For i = 0 To lRow - 1
    For j = 0 To lCol - 1
        arr(i + 1, j + 1) = MSFlexGrid1.TextMatrix(i, j)
    Next
Next
xlsheet1.Range("a1").Resize(lRow, lCol) = arr

TOP

        靜思自在 : 手心向下是助人,手心向上是求人;助人快樂,求人痛苦。
返回列表 上一主題