2014-12-01 83 views
0

我正在尋找一個非常簡單的報告來並排顯示數據。我發現所有報告的例子都只是逐行。帶條件列的Microsoft Access 2007報告

我將使用只會有三種模式中的查詢「公司,產品型號,共有」

我試圖去格式

Company  Model  Total  Company  Model  Total 
A   123  2   B   123  4 
A   222  3   B   333  3 
A   444  7   B   444  7 

的想法是存在於一個信息多家公司可以並排比較相同型號的庫存並找出差異。理想情況下,報告最終會將所有頂級公司的所有模型分組,但這是下一代問題。

我試圖在多個「公司」框中條件格式化,但條件似乎沒有正確應用或出於某種原因,每個「公司」框都採用相同的條件。

回答

0

你要做的這兩個步驟:

  1. 構建查詢,讓你:
Company Model Total 
A   123 2 
A   222 3 
A   444 7 
B   123 4 
B   333 3 
B   444 7 

我們稱之爲q此查詢。

  • 生成的第二查詢
  • SELECT q1.Company, q1.Model, q1.Total, q1.Company, q2.Model, q2.Total 
    FROM q AS q1 INNER JOIN q AS q2 ON q1.Model = q2.Model 
    WHERE q1.company < q2.company; 
    

    這將使您:

    A 123 2 B 123 4 
    A 444 7 B 444 7 
    

    (沒有匹配模型222和333的數據)

    +0

    各公司的型號都不一樣 – Beth 2014-12-01 22:51:20

    +0

    我沒有忘記這個問題,需要在我的工作電腦前拿到測試。這個查詢將排除只出現在1家公司的任何內容,儘管是的?還是我讀錯了 – 2014-12-11 04:00:12

    +0

    是的。如果你想擁有所有的模型,你必須在查詢中添加'Model',並用'FROM(Model LEFT JOIN q AS q1)替換'FROM q AS q1 INNER JOIN q AS q2 ON q1.Model = q2.Model' ON Model.id = q1.model)LEFT JOIN q AS q2 ON Model.id = q2.Model' – 2014-12-11 09:42:26

    0

    我想你需要一個模型(rowHeader),公司作爲列標題,第一個(總數)作爲值的交叉表查詢分組。

    結果應該看起來像

    model A total B total 
    123  2  4 
    222  3 
    333    3 
    444  7  7 
    

    那麼你就可以創建基於交叉結果來計算公司總數的區別,如果你想另一個查詢。

    +0

    [Crosstab Microsoft Support](https://support.office.com/zh-cn/article/Make-summary- data-easy-by-use-a-crosstab-query-8465b89c-2ff2-4cc8-ba60-2cd8484667e8) 這個鏈接似乎描述你有什麼,我敢肯定你打在頭上。當我在工作中得到一個空餘時間時需要做一些實驗,但是感謝您的幫助! – 2014-12-11 04:00:36