2011-09-20 108 views
1

我們從客戶那裏得到一個excel工作表,並且其中一個列出現數據差異。他們發送的物品描述。我們希望以編程方式打開文檔使用項目列查找表,然後使用表中的項目描述(在SQLSever中)編寫一個新列,該部分獲取數據很好,但如何創建這樣一個新列是我在哪裏我難住了。在asp.net但開放寫入但是這是可以做到Excel - 當我嘗試添加一列時出現錯誤

我正在試圖插入一列時,此錯誤:

爲了防止數據丟失,Excel無法將非空單元格 斷工作表。選擇另一個要插入新單元格的位置,或從工作表末尾刪除數據。

如果在單元格中沒有可以從 工作表中移出的數據,則可以重置Excel認爲非空單元格的哪些單元格。要做 這,請按CTRL +結束找到 工作表上的最後一個非空單元格。刪除此單元格及其與最後一行 之間的所有單元格,然後保存您的數據列。

+0

不知道是否是這樣。似乎是一個已知的問題,我相反寫一個新的表,複製我感興趣的一個,並添加一列沒有問題。這對我們很有用,所以這個問題已經關閉了,但是很想知道你是否可以通過編程方式將列添加到現有的工作表中。 – Booksman

回答

2

此問題未鏈接到你的代碼,它發生在你對最後一列(等Excel中不希望你失去它)的數據。

然而,竅門是Excel認爲任何風格都是相同的數據。因此,如果您有在整行中定義了樣式,則插入列可能會導致此錯誤。

讓我舉一個例如解釋它更多:

  1. 創建一個新的Excel工作簿
  2. 選擇整個第一行
  3. 把它塗成黃色(或其他顏色)
  4. 選擇從A1到E1的單元格
  5. 將它們塗成白色
  6. 嘗試插入新列前乙
  7. ,因爲Excel不會認爲你想定義一個特定的風格,最後一個單元格,所以你就輸定了這個信息,如果你插入一個新列

有一個在你的文件,你得到的錯誤解決這個問題(恕我直言,在整行上定義樣式是一種不好的做法,因爲它可能會導致這種錯誤)。

0

是的,我經常得到這個討厭的bug困擾着我。

爲了避免這種行爲在Excel 2007 ,你做的是你走你的數據與結束CTRL + END

然後你去一個單元格下來(或一個單元格的權利,如果你是在底部),以及複製該小區CTRL + C),即應該是空白,因爲你以外的數據。

然後回去的地方(不是傻瓜Excel)中考慮你的數據應該停止,同時保持轉變鍵,並將其粘貼(CTRL + V)。

之後,您應該可以插入該列。

相關問題