vb 关于MSFlexGrid1的保存和导入

来源:百度知道 编辑:UC知道 时间:2024/06/22 14:55:24
Private Sub Command46_Click()

Screen.MousePointer = vbHourglass

Dim i As Integer
Dim j As Integer
CommonDialog1.Filter = "文本文件(*.txt)"
CommonDialog1.ShowSave
If CommonDialog1.FileName <> "" Then
If Dir(CommonDialog1.FileName) <> vbNullString Then
If MsgBox("原文件存在,是否覆盖?", vbYesNo, "提示框") = vbYes Then
Kill CommonDialog1.FileName
Else
Exit Sub
End If
End If

Open CommonDialog1.FileName For Output As 1

For i = 0 To MSFlexGrid1.Rows - 1
For j = 0 To MSFlexGrid1.Cols - 1
Print #1, MSFlexGrid1.TextMatrix(i, j); IIf(j = MSFlexGrid1.Cols - 1, "", ",");
Next
Print #1,
Next
Close
End If
Screen.MousePointer = vbDefault

End Sub
这是保存代码
'CommonDialog1.FilterIndex = 1

Private Sub Command45_Click()
Dim inputdata As String
CommonDialog1.Filter = "

已改。
======================
代码作如下修改。
读取:
Open CommonDialog1.FileName For Input As #1
Do While Not EOF(1)
Line Input #1, inputdata
MSFlexGrid1.AddItem inputdata '你的数据要按行保存,不然出错
Loop
Close #1
这一段代码改为
Dim s As String, a, i As Integer, j As Integer
Open CommonDialog1.FileName For Input As 1
MSFlexGrid1.Rows = 0
Line Input #1, s
a = Split(s, ",")
MSFlexGrid1.Cols = UBound(a) + 1
Seek 1, 1
Do While EOF(1) = False
Line Input #1, s
a = Split(s, ",")
MSFlexGrid1.AddItem vbNullString
For j = LBound(a) To UBound(a)
MSFlexGrid1.TextMatrix(i, j) = a(j)
Next
i = i + 1
Loop
Close
保存:
Open commondialog1.filename For Output As 1
Dim i As Integer, j As Integer
For i = 0 To MSFlexGrid1.Rows - 1
For j = 0 To MSFlexGrid1.Cols - 1
Print #1, MSFlexGrid1.TextMatrix(i, j); IIf(j = MSFlexGrid1.Cols - 1, "&quo