[AccessD] Cross-tab (I think)

A.D.Tejpal adtp at airtelmail.in
Wed May 27 13:55:34 CDT 2009


Andy,

    Crosstab query named Q_2 as given below, should get the results sought by you. It makes use of simple select query Q_1, also given below.

    T_Products is the table having text type fields named Product and Supplier respectively. Creation of sequential numbers (Rank) in Q_1 for each product, covering associated suppliers ensures that there are no redundant columns in the output provided by crosstab query Q_2.

    Note:
    In query Q_1, DCount() function has been used in lieu of a subquery as the latter does not suit subsequent use in crosstab query.

Best wishes,
A.D. Tejpal
------------

Q_2 (Final query - Crosstab)
======================================
TRANSFORM First(Q_1.Supplier) AS FirstOfSupplier 
SELECT Q_1.Product 
FROM Q_1 
GROUP BY Q_1.Product 
PIVOT Q_1.Rank;
======================================

Q_1 (First stage query - Simple Select)
======================================
SELECT T_Products.*, DCount("*","T_Products","Product = '" & [Product] & "' AND Supplier <= '" & [Supplier] & "'") AS Rank 
FROM T_Products;
======================================

  ----- Original Message ----- 
  From: Andy Lacey 
  To: Access Developers discussion and problem solving 
  Sent: Wednesday, May 27, 2009 21:46
  Subject: [AccessD] Cross-tab (I think)


  Hi folks
  This should be simple but I can't see it.

  Have a query which gives a list of raw materials and suppliers, ie

  Mat1 SuppA
  Mat1 SuppB
  Mat1 SuppC
  Mat2 SuppA
  Mat2 SuppD

  and so on

  What I want is a query result for extract to Excel which transposes the
  suppliers into columns giving a single row per material. Thus:

  Mat1  SuppA   SuppB   SuppC
  Mat2  SuppA   SuppD
  Mat3  SupZZ
  etc

  We must have had this a zillion times but I can't get it to go.
  Heeeeeeeeeeeellppppp!
  --
  Andy


More information about the AccessD mailing list