你其實並不想改變字體的整個單元格,但您要更改我接受的單元格中的部分文本。 您仍然需要檢索單元格範圍,然後調整該範圍內的字符。這裏只是調整第一個單元格的例子。 A1。
如果你想改變整個單元格範圍是上標,它會這樣做 currentRange.Font.Superscript = true;
void Main()
{
var app = new Application();
app.Visible = true;
var workbook = app.Workbooks.Add(1);
Sheets excelSheets = workbook.Worksheets;
string currentSheet = "Sheet1";
Worksheet worksheet1 = (Worksheet)excelSheets.get_Item(currentSheet);
worksheet1.Cells[1, 1] = "April 1st";
worksheet1.Cells[1, 2] = "April 2nd";
worksheet1.Cells[1, 3] = "April 3rd";
worksheet1.Cells[1, 4] = "April 4th";
// fill in the starting and ending range programmatically this is just an example.
string startRange = "A1";
string endRange = "A1";
Range currentRange = worksheet1.get_Range(startRange , endRange);
var text = currentRange.Text.ToString();
int length = text.Length;
int index = 0;
if(text.Contains("st"))
{
index =text.IndexOf("st");
}
//The other checks for "nd", "rd", "th" obviously check to see a # precedes these.
if(index > 0)
{
currentRange.get_Characters(index+1, 2).Font.Superscript = true;
}
}
你說的智能感知不會讓你這麼做的意思是什麼?有沒有錯誤?如果是,請將它們包括在您的問題中。 –
@KonradGadzina名稱在當前上下文中不存在。 – user2330678
這是一個VSTO項目嗎? http://msdn.microsoft.com/en-us/library/bhczd18c.aspx –