1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

C#/VB.NET Excel でデータを検索して強調表示する

Last updated at Posted at 2023-02-17

ワークシートに大量のデータが含まれている場合は、検索してハイライトすることで目的のデータをすばやく取得できます。この機能は、プログラムの方法で実装できます。使用したの.NETライブラリはFree Spire.XLS for .NETです。次に、具体的な操作手順とコードについて説明します。お役に立てばと思います。

Free Spire.XLS for .NETをインストールする

方法1:NuGetを介してFree Spire.XLS for .NETをインストールする
「ツール」>「NuGetパッケージマネージャ」>「パッケージマネージャコンソール」の順に選択し、次のコマンドを実行します。
PM> Install-Package FreeSpire.XLS
方法2:プログラムに手動でSpire.xls.dllファイルを導入する
Free Spire.XLS for .NETをローカルにダウンロードし、解凍してインストールします。インストールが完了したら、Visual Studioを開いて新しいプロジェクトを作成し、右側のソリューションエクスプローラで「参照」を右クリックし、「参照を追加」>「参照」を選択して、インストールパスの下のBINフォルダのdllファイルを見つけ、「OK」をクリックして、プログラムに参照を追加します。

操作方法

  • Workbook クラスのインスタンスを作成します。
  • Workbook.LoadFromFile() メソッドを使用して、Excel ファイルをロードします。
  • Workbook.Worksheets[sheetIndex] プロパティを使って、指定したワークシートを取得します。
  • Worksheet.FindAllString(string stringValue, bool formula, bool formulaValue) メソッドで、一致するテキストがあるセルをすべて検索しています。
  • CellRange.Style.Color プロパティを使って、セルを強調する色を設定します。
  • Workbook.SaveToFile() メソッドを使用して、結果ファイルを保存します。

コード

C#:

using Spire.Xls;
using System.Drawing;

namespace FindHighlight
{
    class Program
    {
        static void Main(string[] args)
        {
            //Workbookクラスのインスタンスを作成する
            Workbook workbook = new Workbook();

            //Excelファイルをロードする
            workbook.LoadFromFile("Sample.xlsx");

            //最初のワークシートを取得する
            Worksheet sheet = workbook.Worksheets[0];

            //テキスト「500」を含むすべてのセルを検索する
            foreach (CellRange range in sheet.FindAllString("500", true, true))
            {
                //セルを強調するための色を設定する
                range.Style.Color = Color.Yellow;
            }

            //結果ファイルを保存する
            workbook.SaveToFile("データの検索とハイライト表示.xlsx", ExcelVersion.Version2016);
        }
    }
}

VB.NET:

Imports Spire.Xls
Imports System.Drawing

Namespace FindHighlight
    Class Program
        Shared Sub Main(ByVal args() As String)
            'Workbookクラスのインスタンスを作成する
            Dim workbook As Workbook = New Workbook()

            'Excelファイルをロードする
            workbook.LoadFromFile("Sample.xlsx")

            '最初のワークシートを取得する
            Dim sheet As Worksheet = workbook.Worksheets(0)

            'テキスト「500」を含むすべてのセルを検索する
            Dim range As CellRange
            For Each range In sheet.FindAllString("500", True, True)
                'セルを強調するための色を設定する
                range.Style.Color = Color.Yellow
            Next

            '結果ファイルを保存する
            workbook.SaveToFile("データの検索とハイライト表示.xlsx", ExcelVersion.Version2016)
        End Sub
    End Class
End Namespace

2023-02-17_151617.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?