2013-01-07 77 views
0

使用Excel 2007,我使用Data> From Access按钮链接到Access查询,并将其设置为显示为表格。除了“安置费”类型以外,所有行都存在。从链接的Access查询中丢失的行

E.g.在下面的例子中,免费案例填写扣除显示在Excel工作表中,但扣除费用扣除不。此查询以Access格式从Access导出正确,因此它似乎是Excel链接到它时忽略这些行。

任何想法当链接到Access查询时可能会导致行被忽略?

Chain  Account  Distributor Warehouse StoreID USDate Type of Deduction TotalValue 
Bob's Shops Bob's Shops SMITHS  Romeoville KH00463 5/1/2012 Free Case Fill  29.8 
Bob's Shops Bob's Shops SMITHS  Romeoville KH00463 5/1/2012 Placement fee  2.98 
Bob's Shops Bob's Shops JONES  Greenwood UN20521 6/1/2011 Free Case Fill  38.81 

CNC中

的SQL低于 - 大概有四五堆查询,直到它下到表级别。

安置费单独计算,然后直接从扣除表中加入到其余扣除额中,所以我唯一能想到的是,它们的格式稍有不同,Excel忽略它们可能是因为值不是与其他扣减有相同的数字类型吗?但是,当我直接从Access中导出查询时,一切看起来都是相同的类型(即所有值都是右对齐的,因为它们被视为数字)。

SELECT Chain, Account, Distributor, Warehouse, StoreID, USDate, [Type of Deduction], SUM([Total Value($)]) AS TotalValue 
FROM (SELECT Chain, Account, Distributor, Warehouse, StoreID, USDate, [Type of Deduction], [Total Value($)] 
FROM DeductionsStoresGroupedByMonth 
UNION ALL SELECT [Chain/Account/Warehouse], [Chain/Account/Warehouse2], Distributor, [Chain/Account/Warehouse3], StoreID, USDate, [Type of Deduction], [Amount($)] 
FROM DeductionsByChainNoStoreID) AS [%$##@_Alias] 
GROUP BY Chain, Account, Distributor, Warehouse, StoreID, USDate, [Type of Deduction]; 

-edit 2-

这个查询(和三个其他类似的)只是显示了两个空行作为时从Excel表链接 - 它只是一个字符串列,整数的一列,所以不知道这个问题是这样一个东西:

SELECT Deductions.[Distributor's Reference], Count(Deductions.StoreID) AS NumFreeCaseFills 
FROM Deductions 
WHERE (((Deductions.[Type of Deduction]) Like "*free case fill*") AND ((Deductions.Details) Not Like "*placement fee*")) 
GROUP BY Deductions.[Distributor's Reference]; 
+0

查询的SQL是什么? – Fionnuala

+0

上面已经添加了,虽然不确定它有什么帮助,但并没有回到表级别。 – Wilskt

+0

“Excel忽略它们可能是因为值不是相同的数字类型” - 似乎是可能的。 Excel是否忽略了UNION中的所有内容? – Fionnuala

回答

1

尝试ANSI-92 Query mode wild card charactersLike模式。

WHERE 
     Deductions.[Type of Deduction] Like "%free case fill%" 
    AND Deductions.Details Not Like "%placement fee%" 
+0

是的,这就是它 - 虽然Access可能需要设置为识别百分比符号([切换到ANSI-92](http: //answers.microsoft.com/en-us/office/forum/office_2007-access/will-excel-read-access-query-aliasesexpressions/4227c314-1c46-481a-9ed3-8fc1cd8a6b42))。我并不是真的想要做出这样的改变,所以只是删除了通配符,因为它们在这种情况下不是绝对必要的。 – Wilskt