使用指定的字体名称查找和替换excel中的文本

Van*_*dze 5 c# excel interop

我正在使用Microsoft Excel 12.0对象库.我的目标是找到具有指定字体名称的文本并替换为新文本.

 Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
 xlApp.FindFormat.Font.Name = "Arial";
 workSheet.Cells.Replace('a', 'b', Type.Missing, Type.Missing, Type.Missing, Type.Missing, xlApp.FindFormat, Type.Missing);
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

那么如何找到具有指定字体名称的字符串并替换为新字符串?

谢谢!

Rea*_*idy 2

我对 C# 不太熟悉,这里是 vb.net 代码:

Imports Microsoft.Office.Interop.Excel
Public Class Class1
Sub TEST()

    Dim xlapp As New Microsoft.Office.Interop.Excel.Application

    xlapp.FindFormat.Font.Name = "Arial"

    Dim wb As Microsoft.Office.Interop.Excel.Workbook

    wb = xlapp.Workbooks.Open("C:\test.xlsx")

    wb.Worksheets("Sheet1").Cells.Replace(What:="*", Replacement:="eee", LookAt:=XlLookAt.xlWhole, _
    SearchOrder:=XlSearchOrder.xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=False)

End Sub
End Class
Run Code Online (Sandbox Code Playgroud)

我运行了一个转换器,它输出了 C#:

using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using Microsoft.Office.Interop.Excel;
public class Class1
{

public void TEST()
{
    Microsoft.Office.Interop.Excel.Application xlapp = new Microsoft.Office.Interop.Excel.Application();

    xlapp.FindFormat.Font.Name = "Arial";

    Microsoft.Office.Interop.Excel.Workbook wb = default(Microsoft.Office.Interop.Excel.Workbook);

    wb = xlapp.Workbooks.Open("C:\\test.xlsx");

    wb.Worksheets("Sheet1").Cells.Replace(What: "*", Replacement: "eee", LookAt: XlLookAt.xlWhole, SearchOrder: XlSearchOrder.xlByRows, MatchCase: false, SearchFormat: true, ReplaceFormat: false);

}
}
Run Code Online (Sandbox Code Playgroud)