Home Forums Microsoft Access Microsoft Access Access 2003 adp: Run-time error ''91'': Object variable or with block variable not set RE: Access 2003 adp: Run-time error ''''91'''': Object variable or with block variable not set

  • Gentlemen, Thank you for your responses and help.

    I mimicked the programming code statements in Pages 605-607 of the Book "Programming Microsoft Office Access 2003" by Rick Dobson to do this Access 2003 adp, ADODB.Command, T-SQL programming in order to get a object/file of a Rotated Table/Pivot Table by the technique stated in the article from http://support.microsoft.com/default.aspx?scid=kb;EN-US;q175574:

    HOW TO: Rotate a Table in SQL Server

    View products that this article applies to.

    Article ID

    :

    175574

    Last Review

    :

    February 14, 2005

    Revision

    :

    3.1

    This article was previously published under Q175574

    On This Page

    SUMMARY

     

    Sample Query to Rotate the Table

     

    Query for Large Tables

    REFERENCES

    APPLIES TO

    SUMMARY

    This article describes how to rotate a SQL Server table. Suppose you have a table that is named QTRSALES. The table has the columns YEAR, QUARTER, and AMOUNT with the data in the following format (note that there is no row for the fourth quarter of 1996):

       Year     Quarter     Amount
       -------------------------------
     
       1995     1           125,000.90
       1995     2           136,000.75
       1995     3           212,000.34
       1995     4           328,000.82
       1996     3           728,000.35
       1996     2           422,000.13
       1996     1           328,000.82
                                   

    Now, suppose you want to rotate the table so that you can see the data in the following format:

       YEAR        Q1              Q2              Q3              Q4
       -------------------------------------------------------------------
     
       1995     125,000.90      136,000.75      212,000.34      328,000.82
       1996     328,000.82      422,000.13      728,000.35            0.00
                                   

    The query that you would use to rotate the table is in the next section of this article.

    Back to the top

    Sample Query to Rotate the Table

    Here is the query that you would use to rotate the table:

    SELECT YEAR,
           Q1= ISNULL((SELECT AMOUNT FROM QTRSALES WHERE QUARTER = 1 AND YEAR =
      Q.YEAR),0),
           Q2= ISNULL((SELECT AMOUNT FROM QTRSALES WHERE QUARTER = 2 AND YEAR =
      Q.YEAR),0),
           Q3= ISNULL((SELECT AMOUNT FROM QTRSALES WHERE QUARTER = 3 AND YEAR =
      Q.YEAR),0),
           Q4= ISNULL((SELECT AMOUNT FROM QTRSALES WHERE QUARTER = 4 AND YEAR =
      Q.YEAR),0)
         FROM QTRSALES Q
         GROUP BY YEAR
                                   

    Back to the top

    Query for Large Tables

    For large tables, this query will be faster:

    SELECT year=q.year,
    SUM(CASE quarter WHEN 1 THEN amount ELSE 0 END) as Q1,
    SUM(CASE quarter WHEN 2 THEN amount ELSE 0 END) as Q2,
    SUM(CASE quarter WHEN 3 THEN amount ELSE 0 END) as Q3,
    SUM(CASE quarter WHEN 4 THEN amount ELSE 0 END) as Q4
    FROM qtrsales q
    GROUP BY year
    //////////////////////////////////////////
    I do not know how to handle the following code statements:
       cmd1.CommandType = adCmdStoredProc
       cmd1.CommandText = "Year_In_@year_in_out_return
    and Set rst1 = cmd1.Execute.
    I am lost completely now.  Please help and advise me again if 
    you can.
    Thanks again,
    Scott  Chang