2010-11-26 61 views
4

如何識別PowerPoint 2007中的合併單元格?無論如何,我們可以找到一個特定的細胞合併。PowerPoint 2007表格:識別合併單元格

在2003年,我們嘗試訪問單元格的Fill.Visible屬性,當它引發錯誤時,我們可以將單元識別爲合併單元格。我們如何在2007年實現這一目標?

+0

@otaku謝謝,它只適用於幾種情況。將檢查更多並更新。無論如何,我會標記你的答案。 – Aneef 2011-02-28 17:31:52

回答

3

這很難。但是,我發現的最好方法是檢查單元格的寬度。此代碼是不是最好的,能抓住每一個細胞,但它可能是你一個起點:

Dim r As Row 
Dim co As Column 
Dim c As Cell 
For Each co In tbl.Columns 
    For Each c In co.Cells 
     If c.Shape.Width <> co.Width Then 
      Debug.Print "Is merged cell" 
     End If 
    Next 
Next 

在細胞2.1和2.2合併(即第二排一個2x2的表是現在一個小區),這將打印「合併單元格」兩次,因爲內部表格仍然維持單元格2.1和2.2。但這是一個起點,因爲...

+0

謝謝你會檢查出來 – Aneef 2010-12-22 06:04:27

0

我認爲要比較好c1.Left == c2.Left & & c1.Top == c2.Top。這意味着2個單元格被合併。爲了遍歷所有單元格,我只需使用LINQ的Distinct和Custom Comparer去除「重複」。

0

合併在一起的單元格將具有相同的cell.Shape.Name。不幸的是,雖然這適用於PowerPoint 2003,但在PowerPoint 2007中請求這些形狀的名稱時會出現NotImplementedException異常。我不知道較新版本。