DioDocs for Excel
DioDocs for Excel
データの検索および置き換え
機能 > ワークシート > 範囲の操作 > データの検索および置き換え

何百の行と列を持つスプレッドシートにおいてワークシート全体で特定のデータを検索したり、編集したりするのが非常に面倒になりますが、検索と置換機能により、ユーザーが数秒以内に検索項目を見つけて置換することができ、時間と労力の両方を節約できます。

DioDocs for Excelを使用すると、ユーザーがセル範囲内のデータを検索したり、ワークシート全体で特定の情報(およびそのすべての出現箇所)を見つけたり、置き換えたりすることができます。本機能を使用する際、以下のメソッドで提供されるカスタム要件や設定に応じて、範囲内の特定の値や式を見つけて置き換えることができます。

DioDocs for Excelでは、基本検索とともに、指定されたフォーマットを持つセルの検索、高度なオプションでのデータ検索、ワークシート全体で検索されたデータの出現の列挙、データが占めるバイト数の一致、および、コメント、式、テキストなど内に特定データの検索もサポートされています。さらに、ユーザーが基本置き換えだけではなく、ループ処理して検索したデータの置き換え、高度なオプション(大文字と小文字の区別、単語全体の一致、バイトの一致など)での置き換えもできます。

次のコードは、複数のセル範囲内にデータを検索して置き換える方法を示します。

C#
コードのコピー
//本例は、複数のセル範囲内に「newyork」という言葉を検索して「NewYork」で置き換えます
        
//ワークブックを初期化します
Workbook workbook = new Workbook();
        
//既定のワークシートを取得します 
IWorksheet worksheet = workbook.Worksheets[0];
       
object[,] data = new object[,]{
{"Name", "City", "Birthday", "Sex", "Weight", "Height", "Age"},
{"Bob", "newyork", new DateTime(1968, 6, 8), "male", 80, 180, 56},
{"Betty", "newyork", new DateTime(1972, 7, 3), "female", 72, 168, 45},
{"Gary", "NewYork", new DateTime(1964, 3, 2), "male", 71, 179, 50},
{"Hunk", "Washington", new DateTime(1972, 8, 8), "male", 80, 171, 59},
{"Cherry", "Washington", new DateTime(1986, 2, 2), "female", 58, 161, 34},
{"Coco", "Virginia", new DateTime(1982, 12, 12), "female", 58, 181, 45},
{"Lance", "Chicago", new DateTime(1962, 3, 12), "female", 49, 160, 57},
{ "Eva", "Washington", new DateTime(1993, 2, 5), "female", 71, 180, 81}};

//データを設定します
worksheet.Range["A1:G9"].Value = data;
worksheet.Range["I10:P19"].Value = data;
worksheet.Range["A21:G29"].Value = data;

object what = "newyork";
object replacement = "NewYork";
ReplaceOptions ro = new ReplaceOptions();
ro.MatchCase = true;

//検索対象の複数セル範囲を指定します
IRange searchRange = worksheet.Range["A1:G9, I10:P19"];

//Replaceメソッドを使用して指定されたセル範囲内に置き換えます
searchRange.Replace(what, replacement, ro);

//ワークブックを.xlsx形式で保存します
workbook.Save(@"FindAndReplaceContentUsingReplaceOptions.xlsx", SaveFileFormat.Xlsx);

次のコードは、「SUM」式を持つセルを検索して、その式を「PRODUCT」式と置き換える方法を示します。

C#
コードのコピー
//本例は、「SUM」式を持つセルを検索して、その式を「PRODUCT」式と置き換えます 
        
//ワークブックを初期化します
Workbook workbook = new Workbook();
        
//既定のワークシートを取得します 
IWorksheet worksheet = workbook.Worksheets[0];
        
//式を設定します
worksheet.Range["A1:H5"].Formula = "SUM(6,10)";

FindOptions fo = new FindOptions();
fo.LookIn = FindLookIn.Formulas;
        
IRange range = null;
        
//検索するセル範囲を指定します
IRange searchRange = worksheet.Range["A1:B4"];
do
{
    range = searchRange.Find("SUM", range, fo);
    if (range != null)
    {
        //Replaceメソッドを使用して指定されたセル範囲内に置き換えます
        range.Formula = range.Formula.Replace("SUM", "PRODUCT");
    }
} while (range != null);

//ワークブックを.xlsx形式で保存します
workbook.Save(@"FindAndReplaceFormulasUsingFindOptions.xlsx", SaveFileFormat.Xlsx);