2012-11-15 81 views
1

我經常在Excel工作簿中的許多工作表中將數據作爲「漂亮的表格」。 「漂亮」是指每個工作表的頂部和底部都有解釋性文本,標題包含合併的單元格,標題和第一個數據行之間有空白行,數據列之間有空白列等。保存之前在Excel工作表中的De-prettify表格保存爲製表符分隔的txt文件

Here is a screen grab of part of one offender.

是否有減少體力勞動的最佳做法?

一種方法可能是在Excel中修復所有這些表格。另一種方法是將「原樣」保存爲製表符分隔的txt,手動選擇並導入數據行,刪除空白列,然後手動輸入標題信息。我傾向於做更晚,但即使這是相當手動。

專業人士在做什麼?當我這樣做時,我覺得那個不懂剪切和粘貼的人。對於大多數情況,我使用Python,Stata和R,但我願意接受任何簡化此過程的工具。謝謝!

+1

我曾經有過這樣的項目。我花了兩週的時間記住如何做足夠的[tag:Perl]來匹配所有典型的模式和chomp,並且通過我的方式切碎,這爲我節省了兩週的剪切和粘貼。不知何故,我仍然認爲這是一個勝利,即使現在需要我三個星期(我年長)才能記住如何在[tag:Perl]中再次做同樣的事情。但是,我仍然建議學習一些[tag:Perl],[tag:awk]或類似的預處理[tag:R]不打算做。 –

+1

我教所有用戶使用「插入表」。然後,您可以遍歷工作簿中的表格並忽略所有絨毛。 – Jesse

+0

@ A.Webb - 謝謝!在獲得〜1000個Excel工作簿的文件夾後,在夏天學習了一點awk。聽到這不是一個瘋狂的想法讓人放心。我想沒有銀彈,只是一套可以節省時間的工具。 –

回答

2

說實話,我在清理數據的過程中使用的自動化程度取決於我必須做的次數。對我來說,我認爲通過宏修改Excel中的文件。

如果你的文件總是具有相同的格式(特定任務),你可以簡單地記錄你正在做清理它們的步驟的宏,並將其保存在您的個人工作簿

如果他們稍微你可以修改記錄馬爾科一個主題不同,但有變化(理想情況下分解出到像DeleteTopRowsDeleteEmptyColumns功能,這將接受取決於輸入文件不同的參數)

我覺得Excel的VBA是從工作最容易的地方這種類型的工作,因爲Excel應用程序可以幫助建立很多功能。例如在您的工作表上面Range("10:11").Delete將刪除它們。

+0

謝謝!我有宏將工作簿中的所有工作表寫入.txt,但將更多預處理添加到Excel是一個好主意。感謝指針。 –

相關問題