2015-10-25 68 views
1

我在Excel中有一個大表(150k + rows),我試圖根據一些初步可用信息來填寫。我將在下面發佈我目前的表格結構和期望的結果,但將其作爲我的項目概述:我有三個主要數據列,第四個數據列可能有用,具體取決於建議的方法。現有數據標識了集團ID的列,其開始年份的列,結束年份的列和活躍總年份的列(僅從結束年減去開始年導出)。現有的數據範圍來自各個成員記錄的行,但這些ID已被刪除。使用這些數據我的最終目標是每年找到平均團隊規模。我有很多工具可以解決這個問題,並且最終會在MySQL中結束。在此之前,我計劃嘗試從中提取一些統計數據,但再一次,的目標是以年爲基礎找到平均集團規模(基於該集團成員數量的規模)爲能夠繪製過去100年的平均尺寸。我的數據如下:根據數字範圍自動填寫大數據集

| A |  B  |  C  |  D  | 
    | ID | Start Year | End Year | Years Active | 
1 | 101 |  1967  |  1975 |  7  | 
2 | 101 |  1957  |  1965 |  7  | 
3 | 125 |  1960  |  1975 |  15  | 
4 | 136 |  1905  |  1908 |  3  | 
5 | 222 |  1964  |  1975 |  7  | 
6 | 121 |  1964  |  1975 |  7  | 
7 | 102 |  1952  |  1975 |  7  | 
8 | 306 |  1952  |  1975 |  7  | 
9 | 306 |  1972  |  1975 |  7  | 
10| 172 |  1967  |  1971 |  4  | 
11| 411 |  1947  |  1951 |  4  | 
12| 411 |  1946  |  1950 |  4  | 
13| 411 |  1946  |  1950 |  4  | 
14| 411 |  1946  |  1950 |  4  | 
15| 411 |  1946  |  1950 |  4  | 
16| 172 |  1945  |  1949 |  4  | 
17| 172 |  1963  |  1967 |  4  | 
18| 301 |  1948  |  1952 |  4  | 
19| 301 |  1948  |  1952 |  4  | 
20| 301 |  1972  |  1976 |  4  | 

上面的表示法是我的數據當前在Excel中的數據,最多爲150,784行。我目前的路線讓我想到我需要能夠在開始年份和結束年份之間爆發出一段時間,以瞭解哪個成員在哪一年活躍以及哪些組ID。從那以後,我知道我可以通過很長一段時間來做一些小計以找出我需要的東西,但是我想知道是否有人能夠想出一個公式模式或宏來讓它變得不那麼不可能。我覺得我迷失在多軸方法中,似乎它需要避免每年都這樣做(1899-2015爲完整的數據集)。我希望我在盯着森林的時候錯過了樹木,並且有一個明顯的解決方案/方法可以採取,但任何建議或幫助您可以提供的所有誠意將不勝感激。預先感謝那些貢獻!

+0

_I將發佈我目前的表結構和預期的結果below_其中是所需的結果結構? – BrakNicku

回答

0

也許拓展您的數據,憑藉多年在ROW1(開始於E1 )說,在E2等:

=--AND($B2<=E$1,E$1<=$C2) 

這將導致一個非常大的矩陣但有可能做進一步的處理比較簡單。將導致二進制輸出的公式轉換爲值,處理時間不應該成爲問題。

enter image description here

+1

這是我正在考慮的路線,除非找到更優雅的解決方案。我正在嘗試複製你的結果,但是遇到了一些困難,目前正在處理它。感謝您的指導。 –

+0

我認爲你可能會發現一個PT有幫助,但是150,784x120你會被建議在嘗試展平一張如我所示的表格之前擺脫'0'值,哪個VBA可以。但是,如果您使用VBA標籤,則需要發佈代碼嘗試。 – pnuts

+0

我同意刪除0值,因爲我的目標無論如何都是計數。我似乎不得不將我的標題重新設置爲值以使您的公式返回有效的結果,看起來像是這樣。目前正在研究所有1800萬個電池。 –