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