dim i As integer 
Dim nNum As long
for i=0 to Grid.rows-1
Grid.col=2
Grid.row=inNum=nNum+Grid.text'要保证为数值
next i
Grid.AddItem("")
grid.col=2
grid.row=i
grid.text=nNum
大概这样就行了

解决方案 »

  1.   

    我写了个函数,你看看吧
    '##########################################
    '                报表求和
    '##########################################
    Public Sub AddSum(msgReport As mshflex )
        Dim i, j As Long
        Dim sum As Double
        Dim strTemp As String
        With msgReport
            If msgReport.Rows =  1Then Exit Sub
             strTemp = "合计"
             .AddItem strTemp
    '判断所有的列,看是否需要计算和
            For i = 1 To .Cols - 1
            
            If InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "数量") > 0 Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "额") > 0 Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "款1") Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "本年") > 0 Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "本月") > 0 Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "累计") Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "次数") Then
                sum = 0
                For j = IIf(blnAdd, 2, 1) To .Rows - 2
                    If .TextMatrix(j, i) <> "" Then
                        If IsNumeric(.TextMatrix(j, i)) Then
                            sum = sum + CDbl(.TextMatrix(j, i))
                        End If
    '
                        If InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "单价") > 0 Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "额") > 0 Or InStr(1, .TextMatrix(IIf(blnAdd, 1, 0), i), "款1") > 0 Then
                            .TextMatrix(j, i) = Format(.TextMatrix(j, i), "个是化成RMB的格式")
                        
                        Else
                            .TextMatrix(j, i) = .TextMatrix(j, i)
                        End If
                    '如果为零,不显                     
        If Trim(.TextMatrix(j, i)) = "0" Or Trim(.TextMatrix(j, i))    = "0.00" Then
                               .TextMatrix(j, i) = ""
                            End If                    
                    End If
                Next j
           .TextMatrix(.Rows - 1, i) = Format(sum, “格式华”))          .ColAlignment(i) = 8
            End If
            Next i
        End With
    End Sub
      

  2.   

    Dim i As Long
        Dim count As Double
        With MSFlexGrid1
            For i = 1 To .Rows - 1
                count = count + Val(.TextMatrix(i, 1))  '假设第二列是成绩
            Next i
            .Rows = .Rows + 1
            .TextMatrix(.Rows - 1, 0) = "总计"
            .TextArray(.Rows - 1, 1) = count
        End With
      

  3.   

    如果我用一个textbox控件来显示总和的话,该怎么做?
      

  4.   

    dim i As integer 
    Dim nNum As long
    nnum=0
    for i=2 to Grid.rows
    Grid.col=2
    Grid.row=inNum=nNum+Grid.text'next i
    text1.text=nNum 'text1 为TEXTBOX控件
      

  5.   

    dim i As integer 
    Dim nNum As long
    nnum=0
    for i=2 to Grid.rows
    Grid.col=2
    Grid.row=inNum=nNum+Grid.text
    next i
    text1.text=nNum 'text1 为TEXTBOX控件
      

  6.   

    注意:他的程序的第3行:nnum=0应为:nNum=0自己注意一下!!祝你成功!