Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8649345
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 12, 20262026-06-12T13:32:15+00:00 2026-06-12T13:32:15+00:00

How can I get the sum value of the selected cells or a range

  • 0

How can I get the sum value of the selected cells or a range in stringgrid? Please note that sometimes these cells contain string values!

I try GridCoord, but it doesn’t work good because sometimes there are “hidden columns”.

procedure TMainShowForm.StgSelectionChanged(Sender: TObject; ALeft, ATop,
 ARight, ABottom: Integer);
var
i: Integer;
gc: TGridCoord;
sum:double;
begin
  for i := 1 to stg.SelectedCellsCount do
    begin
      gc := stg.SelectedCell[i - 1];
      sum:=sum+stg.floats[(gc.X),(gc.Y)];
    end;
  AdvOfficeStatusBar1.Panels[0].Text:='Sum = '+ formatfloat('#,##0.',sum);
  AdvOfficeStatusBar1.Panels[1].Text:='Count = '+ inttostr(stg.SelectedCellsCount);
end;
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-12T13:32:17+00:00Added an answer on June 12, 2026 at 1:32 pm

    How to get sum of the floating-point values of a selection in TStringGrid ?

    For standard Delphi TStringGrid for instance this way:

    procedure TForm1.Button1Click(Sender: TObject);
    var
      Sum: Double;
      Val: Double;
      Col: Integer;
      Row: Integer;
    begin
      Sum := 0;
      for Col := StringGrid1.Selection.Left to StringGrid1.Selection.Right do
        for Row := StringGrid1.Selection.Top to StringGrid1.Selection.Bottom do
          if TryStrToFloat(StringGrid1.Cells[Col, Row], Val) then
            Sum := Sum + Val;
      ShowMessage('Sum of the selection is ' + FloatToStr(Sum) + '.');
    end;
    

    How to get sum of the floating-point values of a selection (including invisible cells) in TAdvStringGrid ?

    Hence you’re most probably using TAdvStringGrid you can try the following not yet tested or optimized code. So far I found, you can use AllFloats property to access all grid cells as float irrespective of hidden columns or rows. Assuming you want to sum continuous selection after you hide a certain column, you may try this code:

    procedure TForm1.Button1Click(Sender: TObject);
    var
      Sum: Double;
      Col: Integer;
      Row: Integer;
    begin
      Sum := 0;
      for Col := AdvStringGrid1.Selection.Left to AdvStringGrid1.Selection.Right do
        for Row := AdvStringGrid1.Selection.Top to AdvStringGrid1.Selection.Bottom do
          Sum := Sum + AdvStringGrid1.AllFloats[Col, Row];
      ShowMessage('Sum of the selection is ' + FloatToStr(Sum) + '.');
    end;
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Can get all triples with value null in specific field? All people with date_of_birth
I can get the current selected row in this way: private void DataGridView1_CellContentClick(object sender,
I get Daily sum of data with these lines? SELECT convert(varchar, okuma_tarihi, 102) as
How can I get a sum for all the columns in a datatable? Say
how to get sum of fibonacci sequence using that code: fibs= 0 : 1
I can't get the right sum of two values.I want to sum the cena1
We can get class Class object by 3 methods: MyClass.class obj.getClass Class.forName(className) I don't
I can get the file path with: (message (file-name-directory (or buffer-file-name load-file-name))) But if
I can get this to work: [<DllImport(user32.dll)>] extern bool GetClientRect(nativeint, RECT*) let getClientRect hwnd
You can get the nodes of the document object of an <iframe> with the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.