1
我在桌上有70列,它大部分是空的。我想刪除沒有單個值的列。問題是,表格有18000行,手動滾動是愚蠢的。計算70中Access值的列數?
我厭倦了Expression和Select查詢,但是我看到表達式可以接受有限數量的字符,即沒有足夠的空間來覆蓋所有70列。
這裏是我的嘗試:
Format(IIf([t4k1],[t4k1],""), "00") & " " & Format(IIf([t4k2],[t4k2],""), "00") & " " &
Format(IIf([t4k3],[t4k3],""), "00") & " " & Format(IIf([t4k4],[t4k4],""), "00") & " " &
Format(IIf([t4k5],[t4k5],""), "00") & " " & Format(IIf([t4k6],[t4k6],""), "00") & " " &
Format(IIf([t4k7],[t4k7],""), "00") & " " & Format(IIf([t4k8],[t4k8],""), "00") & " " &
Format(IIf([t4k9],[t4k9],""), "00") & " " & Format(IIf([t4k10],[t4k10],""), "00") & " " &
Format(IIf([t4k11],[t4k11],""), "00") & " " & Format(IIf([t4k12],[t4k12],""), "00") & " " &
Format(IIf([t4k13],[t4k13],""), "00") & " " & Format(IIf([t4k14],[t4k14],""), "00") & " " &
Format(IIf([t4k15],[t4k15],""), "00") & " " & Format(IIf([t4k16],[t4k16],""), "00")
正如你可以看到,表中有70列,t4k1,t4k2,t4k3,... t4k70
下面是表的樣子:
我如何檢查所有70列正常,是不是用VBA程序?
代碼的外觀如何?
還是有更好的辦法?
這看起來像非常規範化的數據。它不應該以這種方式存儲。 – Minty
是的,我同意,70列應該包含1,其中在行中有一些介於1和70之間的值。因此,如果某個列包含值43,則正確的方式是將列43包含1.同樣適用對於這70列中任何地方的1到70之間的所有其他值) – Vlad
應該只有3列。行的UniqueID,存儲Kx編號和值的列。然後您只存儲存在的值,並且查詢變得簡單。 – Minty