2

首先,非常感谢阅读此问题并可以提供帮助的任何人。

我正在唱 VS2010,并使用向导创建了一个 Excel 2007 加载项项目,然后我在我的项目中添加了一个名为 Ribbon 的新文件夹,并在其中创建了一个新项目,它是一个 Ribbon(可视化设计器)。

从这里我向功能区添加了一个新组和一个新按钮。我双击新按钮并显示以下代码:

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 插件的新手,但对 C++、Java 和 Excel 有很好的了解。在这种情况下,我用谷歌搜索的任何东西都没有帮助我。

我最好的猜测是我错过了一个图书馆,但是经过一些似乎并没有解决我的问题的摆弄。使用此按钮,我如何从工作表中获取值?如何为单元格着色?如何访问excel中的公式函数?

谢谢!

4

2 回答 2

5

阅读有关创建 Excel 2007 加载项的一些基础知识并从Globals.ThisAddIn.Application开始

于 2011-08-19T16:57:29.897 回答
0

您必须访问 Range 对象(即单元格、行、列),然后更改背景或您想要更改的任何内容。

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

强制转换为 Range 是不必要的,但 Cells[1,1] 是动态类型。当我将它转换为 Range 时,智能会告诉我 Range 有哪些属性。

Application.Cells[1,1] selects Cell A1, Resize[1,5] resizes range to all cells between A1 and E1 including these.

于 2017-05-29T11:18:55.603 回答