Solved

Cross tab report totals

Posted on 2013-06-02
9
467 Views
Last Modified: 2013-06-08
Hi, I have an access 2007 cross tab report that I am building at run time. I noticed that the total column does not add correctly. I have done the math several times and cannot see where it may be getting these amounts from. I have attached a sample below. I did not include the columns headings but the last column is supposed to add the columns.

Any help would be appreciated. The report is due tomorrow.
SampleReport.PNG
0
Comment
Question by:smolbeck367
  • 6
  • 3
9 Comments
 
LVL 47

Expert Comment

by:Dale Fye (Access MVP)
ID: 39214708
What code are you using to achieve this report?

I assume you are using the report Open or
Load event to assign columns to the control source of your controls.  What code are you using fot the control source of your totals column?  Are you using the NZ function!
0
 

Author Comment

by:smolbeck367
ID: 39214715
I am using the code below to generate the columns and total. I am not using NZ. I took this from Office help on creating dynamic cross tab reports.

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
   
   Dim intX As Integer
   Dim lngRowTotal As Long

   '  If PrintCount is 1, initialize rowTotal variable.
   '  Add to column totals.
   If Me.PrintCount = 1 Then
      lngRowTotal = 0
       
      For intX = 2 To intColumnCount
         '  Starting at column 2 (first text box with crosstab value),
         '  compute total for current row in the "Detail" section.
         lngRowTotal = lngRowTotal + Me("Col" + Format(intX))

         '  Add crosstab value to total for current column.
         lngRgColumnTotal(intX) = lngRgColumnTotal(intX) + Me("Col" + Format(intX))
      Next intX
       
      '  Put row total in text box in the "Detail" section.
      Me("Col" + Format(intColumnCount + 1)) = lngRowTotal
      '  Add row total for current row to grand total.
      lngReportTotal = lngReportTotal + lngRowTotal
   End If
End Sub
0
 
LVL 47

Expert Comment

by:Dale Fye (Access MVP)
ID: 39214752
It looks like your columns are constant, since you are not doing anything with the other columns in this code.  If that is the case, I think I would use the form load event, and rather than compute the value of the totals column, would define a string that would become the control source of the totals column, something like (from my iPad so may contain typos).

Assuming your field names are like Col1, Col2, Col3, then try something like.

For intX =2 to intcolumncount.
    strCS = strCS & "+ NZ([col" & intX & "])"
Next
StrCS = mid(strCS, 2)
Me("col" + (intColUmnCount +1)).controlsource = strCS
0
 

Author Comment

by:smolbeck367
ID: 39214773
I built the report to accept the largest number of associates we have on a team. In our case that would be 11.  Those are my column names.  How would I adjust the code I have not to create the total column and replace it with your code. I am really new to cross tab reports and building them dynamically. I appreciate your patience and guidance.
0
Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 
LVL 47

Expert Comment

by:Dale Fye (Access MVP)
ID: 39214902
Can you provide me a sample of the output of your Cross-tab query?  Output the query to Excel and change the row and column names as you see appropriate.  That way, I can simply import that into the example crosstab report database I have.  If you need to change the column headings that will be fine, you will get the idea.
0
 

Author Comment

by:smolbeck367
ID: 39214923
Here it is. This is one teams query results. I really appreciate your help.
Sample.xlsx
0
 

Accepted Solution

by:
smolbeck367 earned 0 total points
ID: 39216294
Is there anyone else that may be able to assist me with this question? The report is due this afternoon. I have take the steps to export to excel and update that way for today but I am really hoping that the managers will be able to run their team reports some time very soon. Thanks for the help.
0
 

Author Comment

by:smolbeck367
ID: 39216626
Closing Request - issue resolved.
0
 

Author Closing Comment

by:smolbeck367
ID: 39231330
I was able to find the answer to my question.
0

Featured Post

U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Most if not all databases provide tools to filter data; even simple mail-merge programs might offer basic filtering capabilities. This is so important that, although Access has many built-in features to help the user in this task, developers often n…
It took me quite some time to sort out all the different properties of combo and list boxes available from Visual Basic at run-time. Not that the documentation is lacking: the help pages are quite thorough and well written. The problem was rather wh…
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now