Hello there,
I am doing my 'budget control system', and I want to make substraction from the value i entered in a textbox (budget for the year), with the sum of all the value in the 8th column of the MS Flex Grid data (which is the money used).

Can anybody plz guide me how to make it?

Recommended Answers

All 10 Replies

Hi,

Use MSFlexGrid.TextMatrix ( row, column ) to get/set then value rom/to the grid.

Hi,

Try This :

Dim i As Integer
Dim TAmt As Currency
TAmt = 0 
For i = 1 To Grd.Rows-1
  TAmt = TAmt + Val(Grd.TextMatrix(i, 8))
Next
TAmt = TAmt +Val(txtBudget.Text)
MsgBox  "Total Amount Is : " & Format(TAmt, "0.00")

Change names of your controls, and Column accordingly..

REgards
Veena

commented: Nice Code +8

Actually, I'm using FlexGrid to display the budget database records. I've tried the codes given by Veena, but it displays the 424 error, and debug at the line below..

For i = 1 To Grd.Rows-1

Could both of you plz explain me, with more details? Or by giving me codes to be applied.. Plz..

How about you rename your FlexGrid control to Grd..... (or is it already Grd)?

Thank you Comatose,
After i rename it to Grd, the error disappear..
But still, i can't figure out how can it works..
What if my plan being like this..
I have to put first, the value of budget in the txtBudget..
Then, the value in the txtBudget will be reduced by every value in the Grd 8th column..
Then, the balance will be appear in the txtBalance..
Could anybody from 3 of you, tell me the codes to make it work? Sorry if i'm like asking, but i am a beginner VB user..

Hi,

Yes, Little bit tweaking of my code, will do the job:

Dim i As Integer
      Dim TAmt As Currency
      TAmt = 0
      For i = 1 To Grd.Rows-1
         TAmt = TAmt + Val(Grd.TextMatrix(i, 8))
      Next
      TAmt = Val(txtBudget.Text) - TAmt
      txtBalance.Text = Format(Tamt,"0.00")

You can Call this In LostFocus Of txtBudget..

Regards
Veena

commented: always trying to help +1

Sorry... But, it didn't work.. Maybe, because i don't know how and where to use it.. I copied and pasted the latest codes by Venna in the private Sub Grd_Click like below..

Private Sub Grd_Click()
Dim i As Integer
      Dim TAmt As Currency
      TAmt = 0
      For i = 1 To Grd.Rows - 1
         TAmt = TAmt + Val(Grd.TextMatrix(i, 8))
      Next
      TAmt = Val(txtBudget.Text) - TAmt
      txtBalance.Text = Format(TAmt, "0.00")
End Sub

Did i use it incorrectly? Here i enclosed a small-sized of the related form, to show u what i'm doing..

P/S: Do i need to put codes also in the txtBudget and txtBalance? Sorry for the dumb question...

Plz sumbody.... Plz tell me, how to use the codes Venna gave me.. I really don't have the idea where to put the codes.. FlexGrid is a new thing for me.. It looks come to the solved, but i can't make it.. Plz... I need to pass this project, in order to get my diploma... :( I'm not an IT student, but doing the IT project..

What if like this... I have to put the budget value first in the txtBudget, then I need to click the cmdCalculate to have the balance calculated being in the txtBalance.... I really need a detail explaination, which codes to put in the FlexGrid, which in the txt and cmd... Plz... I need your kind help... I'm not an IT student, and don't have a good teacher about it.. Only God who knows how to repay your help.. Plz..

Thanx to all of you, teachers... I'm sorry for being so dumb before this.. Hehe.. It was alreasdy solved.. But, the 8th column need to be changed ti 7th column.. K, thanx lot..

[Private Sub cmdCalculate_Click()
Dim i As Integer
      Dim TAmt As Currency
      TAmt = 0
      For i = 1 To Grd.Rows - 1
         TAmt = TAmt + Val(Grd.TextMatrix(i, 7))
      Next
      TAmt = Val(txtBudget.Text) - TAmt
      txtBalance.Text = Format(TAmt, "0.00")
End Sub]
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.