1

您能帮我将以下 Excel VB 代码重写为 C# 吗?

Range("C9:E11").Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
    Formula1:="=1"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
    .PatternColorIndex = xlAutomatic
    .Color = 255
    .TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
4

2 回答 2

5

您正在寻找的是 Excel 自动化。这几乎意味着使用 Excel 提供的一组 COM 对象从另一个应用程序远程控制 Excel。

任何你可以用 VBA 做的事情,你都可以用自动化来实现(好吧,几乎任何事情)。

如果你用谷歌搜索“Excel Automation C#”,你会得到很多点击。如何从 Microsoft Visual C# .NET 自动化 Microsoft Excel是第一次返回给我,看起来是一个不错的起点。

希望这可以帮助,

于 2009-06-15T15:29:59.343 回答
2
 using Excel = Microsoft.Office.Interop.Excel;
 ...
 object mis = Type.Missing;

 Excel.FormatCondition cond =
    (Excel.FormatCondition)range.FormatConditions.Add(Excel.XlFormatConditionType.xlCellValue,
    Excel.XlFormatConditionOperator.xlEqual, "=1",
    mis, mis, mis, mis, mis);
    cond.Interior.PatternColorIndex = Excel.Constants.xlAutomatic;
    cond.Interior.TintAndShade = 0;
    cond.Interior.Color = ColorTranslator.ToWin32(Color.White);
    cond.StopIfTrue = false;
于 2009-06-16T14:27:38.207 回答