2017-09-07 89 views
0

我有兩個數據透視表:Excel數據透視表空白類別不能正常顯示

數據透視表中的數據源是一個Access導出到Excel其手動涉及複製和粘貼從導出文件中的數據到報告文件中的數據表它將數據提供給數據透視表。

數據透視表2的數據源是工作簿連接,與用於創建舊導出文件的相同查詢相同,該導出文件將日期返回給新的報表文件的數據表,然後該數據表由數據透視表使用。

我的問題是,從工作簿連接派生的數據創建的數據透視表將空白顯示爲原始表中找到的實際空白「」,而不是「(空白)」。

截圖1 - 普通空白

Screenshot 1 - Normal Blank

截圖2 - 古怪的空白

Screenshot 2 - Weird Blank

最奇怪的是,當我去到Excel中的源表,數據連接實際上將數據放在工作簿中,空白顯示爲「(bla nk)「當我去過濾表中的數據。

截圖3 - 古怪的空白源表

Screenshot 3 - Weird Blank Source Table

我找不到這樣的網上東西。任何幫助將不勝感激!

回答

0

Excel傾向於添加不可見的格式化字符,使用命令導入時(通常)不會導入,但會進行復制粘貼。這些需要刪除。

粘貼以下函數到模塊:

Public Function RemoveNonASCII(str As String) As String 
    Dim i As Integer 
    For i = 1 To Len(str) 
     'Append the question marks 
     If Mid(str, i, 1) = "?" Then 
      RemoveNonASCII = RemoveNonASCII & "?" 
     End If 
     'Append anything that isn't a questionmark 
     If Asc(Mid(str, i, 1)) <> 63 Then 
      RemoveNonASCII = RemoveNonASCII & Chr(Asc(Mid(str, i, 1))) 
     End If 
    Next i 
End Function 

然後執行以下查詢刪除所有多餘的空格和格式字符訪問:

UPDATE MyTable SET MyTable.MyColumn = Trim(RemoveNonASCII(MyTable.Mycolumn))