2011-08-19 46 views
2

首先,非常感謝任何人閱讀此問題並提供幫助。簡單的C#Excel插件功能區按鈕添加到顏色單元格

我唱歌VS2010和我已經創建了一個Excel 2007加載項目使用嚮導,然後我添加一個新文件夾到我的項目稱爲功能區,並在裏面創建一個新項目是一個功能區(視覺設計師)。

從這裏我已經添加了一個新組到功能區和一個新按鈕。我雙擊在新的按鈕,我跟此代碼:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Microsoft.Office.Tools.Ribbon; 
using System.Xml.Linq; 

namespace UploadFCStats.Ribbon 
{ 
    public partial class FCRibbon 
    { 
     private void FCRibbon_Load(object sender, RibbonUIEventArgs e) 
     { 

     } 

     private void button1_Click(object sender, RibbonControlEventArgs e) 
     { 

     } 
    } 
} 

現在我想要做的就是顏色一些細胞或某些值存儲在變量,然後創建一個SQL服務器和使用的連接一個插入語句來上傳一些數據。

但是我似乎無法訪問任何典型的Excel屬性。現在我對C#和Excel Add-In有了新的認識,但對C++,Java和Excel有很好的理解。在這種情況下,我用Google搜索過的任何東西都無法幫助我。

我最好的猜測是我錯過了一個庫,但經過一些似乎並沒有解決我的問題的擺弄。使用這個按鈕,我如何從工作表中獲取值?我如何爲單元格着色?如何在Excel中訪問公式函數?

謝謝!

+0

檢查此鏈接:http://csharp.net-informations.com/excel/csharp-read-excel.htm – reggie

回答

5

閱讀有關創建一個Excel 2007外接一些基本知識,並與Globals.ThisAddIn.Application

+0

是的我沒有問題從ThisAddIn類訪問對象。我甚至可以從功能區按鈕中引用自己的書面代碼,這是否意味着我無法直接從功能區中引用Excel對象? – CodingIsAwesome

0

您有權訪問Range對象(即單元格,行,列),然後更改背景或你想改變什麼開始。

var range = ((Range)Globals.ThisAddin.Application.Cells[1,1]).Resize[1,5]; 
range.Interior.Color = (int)XlRgbColor.rgbGreen; 

不需要投入範圍,但Cells [1,1]是動態類型。當我將它施放到範圍intelisence告訴我範圍有什麼屬性。

Application.Cells [1,1]選擇Cell A1,Resize [1,5]調整範圍到A1和E1之間的所有單元格,包括這些。