|
分類:[.NET 全般]
2017/07/14(Fri) 11:19:12 編集(投稿者) 2017/07/14(Fri) 11:19:10 編集(投稿者) 2017/07/14(Fri) 11:18:37 編集(投稿者) 2017/07/14(Fri) 11:18:33 編集(投稿者)
ある処理を行い、作成したcsvファイルのデータをMSHFlexGridに表示しようとしたのですが表示が遅く感じます。 プログラム自体はこの部分が遅いだけで正しく動作します。動作環境はi3-2120 RAMは4GB vb2010です。
'ファイル3を読み込み、MSHFlexGridに表示 FileOpen(FileNo3, strVal3, OpenMode.Input)
With Form3.MSHFlexGrid1
.Visible = False .Redraw = False
Do Until EOF(FileNo3)
strLine = LineInput(FileNo3) CellsData = Split(strLine, ",")
If Form3.MSHFlexGrid1.get_Cols() < UBound(CellsData) + 1 Then
'データの列数に合わせて、MSHFlexGridの列数を設定 Form3.MSHFlexGrid1.set_Cols(UBound(CellsData) + 1)
End If
lngcount = lngcount + 1
'行数カウント If lngcount > 2 Then
Form3.MSHFlexGrid1.Rows = Form3.MSHFlexGrid1.Rows + 1
End If
For n = LBound(CellsData) To UBound(CellsData)
'MSHFlexGridのセルにデータを書き込み Form3.MSHFlexGrid1.set_TextMatrix(lngcount - 1, n, CellsData(n))
Next n Loop
'セル幅を項目ごとに調整 .set_ColWidth(0, 900) .set_ColWidth(1, 900) .set_ColWidth(2, 600) .set_ColWidth(3, 1000) .set_ColWidth(4, 1000) .set_ColWidth(5, 1000) .Visible = True .Redraw = True
End With
FileClose(FileNo3)
Form3.Show()
ネットで調べてvisibleやRedrawをFalseにして、セルに値をセットし終わった後にTrueにしているのですが以前遅いです。 csvファイルは6列12万行です。掛かる時間は3分半ほどです。これ以上速くすることは出来ないのでしょうか?
|