'最大字符数的长度:
Dim L1 As Integer 'L1表示某一列的最大字符数
Dim i As Integer
For i = 1 To MSFlexGrid1.Rows
If Len(Trim(MSFlexGrid1.TextMatrix(i, 1))) > L1 Then
L1 = Len(Trim(MSFlexGrid1.TextMatrix(i, 1)))
End If
Next i
'转换成列的宽度
MSFlexGrid1.ColWidth(1) = L1 * 300 '一个汉字用300,字母用1500
...................
这是我刚改过的,保证显示 标题和信息
Dim L1 As Integer 'L1表示某一列的最大字符数
Dim i As Integer
Dim L2 As Integer
For i = 1 To MSFlexGrid1.Cols - 1
L1 = Len(Trim(MSFlexGrid1.TextMatrix(1, i)))
L2 = Len(Trim(MSFlexGrid1.TextMatrix(0, i)))
If Len(Trim(MSFlexGrid1.TextMatrix(1, i))) < Len(Trim(MSFlexGrid1.TextMatrix(0, i))) Then
MSFlexGrid1.ColWidth(i) = L2 * 300
Else
MSFlexGrid1.ColWidth(i) = L1 * 300
End If