2017-03-16 82 views
1

有沒有辦法創建一個excel模板,如果插入了某個列,它會自動應用公式?用例是:Excel粘貼表後應用公式

  1. 用戶拷貝從桌面程序(CSV或製表符分隔)
  2. 粘貼表到Excel模板
  3. 不知何故列標題被匹配的表(報頭的名字是固定的)
  4. 乘以固定值的列值(像1.25

的問題是,該柱可能是在不同的索引和式應適用於所有行,不只是固定的,但我的主要問題是如何獲得複製粘貼事件並找到列。

編輯:我只能用VBA做到這一點(以前從未使用過)?

+0

您的導入是否總是有相同的列數? –

+0

並不總是,這就是爲什麼我試圖通過標題文本找到列 – appl3r

+0

要使用VBA檢測粘貼事件,請看下面這個問題:http://stackoverflow.com/questions/27818152/excel-vba-how-檢測是否被粘貼在工作表中 – Phylyp

回答

1

假設列標題是恆定的,你可以插入表用「虛設」報頭,並使用在標題名稱爲基準 enter image description here

在我已經把一個公式中的計算值列中的示例計算列。假設您的最大輸入列爲6,我已將Calc放在G列中,因爲從左至右進行計算是一種很好的做法。

您可以將Calc移動到A列,並將「dummy」列減少到1,無論您想要的標題是什麼。

要製作模板,刪除第3行並清除僞數據,只留下計算(一個或多個),並保存在您的配置文件模板文件夾.xltx(可以是任何地方在您的Windows/Office版本)。

粘貼導入數據時,表格將向下擴展並自動複製公式。如果您已將計算移至表格的左側,表格將調整至右側以容納所有導入的列。

儘管模板中的MyHeader列可能會被覆蓋,但如果它仍然可以在Table2 [#Headers]中找到,那麼公式仍然可以工作。

+0

只是爲了確定:如果在我的粘貼中找到標題,它是否會計算結果到額外的列?我非常喜歡這種方法,但是我需要在粘貼的列上執行更改(我也必須將其應用於其他列,因此重複每個列都不太好)。 – appl3r

+0

如果您的導入包含標題並且其名稱一致,請複製並粘貼它們。只要拼寫正確,公式的「MATCH」部分就會找到它們。 –