Ovako, nisam siguran da li misliš na jednu kolonu, jedan red ili kompletan grid gde su vrednosti manje od 10, ali evo i sva tri rešenja.
Sabrati samo jednu kolonu:
Code:
Private Function SumColumn(lColumn As Long) As Long
Dim i As Long
Dim lZbir As Long
lZbir = 0
For i = 1 To MSFlexGrid1.Rows - 1
If Val(MSFlexGrid1.TextMatrix(i, lColumn)) < 10 Then lZbir = lZbir + Val(MSFlexGrid1.TextMatrix(i, lColumn))
Next i
SumColumn = lZbir
End Function
Sabrati samo jedan red:
Code:
Private Function SumRow(lRow As Long) As Long
Dim i As Long
Dim lZbir As Long
lZbir = 0
For i = 1 To MSFlexGrid1.Cols - 1
If Val(MSFlexGrid1.TextMatrix(lRow, i)) < 10 Then lZbir = lZbir + Val(MSFlexGrid1.TextMatrix(lRow, i))
Next i
SumRow = lZbir
End Function
Sabrati ceo grid
Code:
Private Function SumGrid() As Long
Dim i As Long
Dim j As Long
Dim lZbir As Long
lZbir = 0
For i = 1 To MSFlexgrid1.Rows - 1
For j = 1 To MSFlexgrid1.Cols - 1
If Val(MSFlexGrid1.TextMatrix(i, j)) < 10 Then lZbir = lZbir + Val(MSFlexGrid1.TextMatrix(i, j))
Next j
Next i
SumGrid = lZbir
End Function
Primetićeš da sam izračunavanje stavio u funkcije, što je uvek dobra praksa, jer dobijamo na fleksibilnosti. Ovako ne moraš da se vežeš za jednu labelu ili samo jedan red ili kolonu, već jednom linijom koda pozivaš ono što ti treba i smeštaš gde god ti želiš. Recimo... Hoćeš da sabereš samo drugi red i smestiš u Label1, samo ukucaš
Code:
Label1.Caption = SumRow(2)
ili hoćeš treću kolonu u textbox
Code:
Text1.Text = SumColumn(3)
ili ceo grid u drugu labelu
Code:
Label2.Caption = SumGrid
Uz malo dorade, mogao bi da prosleđuješ i vrednost ispod koje treba sabirati brojeve, prostim dodavanjem još jedne varijable kojom ćeš zameniti broj 10, no da ne dužimo sad.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti