【问题标题】:How to implement Excel vbA in C#如何在 C# 中实现 Excel vbA
【发布时间】:2010-11-03 01:21:27
【问题描述】:

您能帮我将以下 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

【问题讨论】:

  • 如果你不介意我问,为什么?此外,您是否在 C# 的任何特定方面遇到问题,或者您是否正在寻求入门帮助?谢谢:)
  • 这听起来像是一道作业题……

标签: c# excel excel-2007 vba


【解决方案1】:

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

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

如果您在 Google 上搜索“Excel 自动化 C#”,您会获得很多点击率。 How to automate Microsoft Excel from Microsoft Visual C# .NET 是第一个返回给我的,看起来是个不错的起点。

希望这会有所帮助,

【讨论】:

    【解决方案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;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-12
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多