C#

【C#】ClosedXMLでエクセルファイルを読み込んで操作する方法【使い方】

C#でExcelファイルを操作したいんだけどやり方が分からない。誰か詳しく教えてほしい。

この記事ではC#を使ってエクセルを自動で自由自在に操れる方法を載せています。

 

本記事はこんな方におすすめ

C#でExcelファイルを操作したい人向け

 

この記事を書いたのはこんな人

ネットショップコンサルタント

 

※今回はMicrosoft Visual Studioを使って説明します。

 

 

ClosedXMLのインストール

まずはエクセルを操作するために必要なClosedXMLなる物をNuGetからインストールさせます。

 

Visual Studioのツールから「NuGetパッケージマネージャー」を選択。

「NuGetパッケージマネージャー」の一番上にある「パッケージマネージャーコンソール」をクリックします。

 

 

するとVisual Studioの最下部にパッケージマネージャーコンソールが出てきて「PM>」の後ろ辺りに文字が記入出来るような感じでチカチカしてるんじゃないかな?

ここに「PM>Install-Package ClosedXML」って記入します。

 

んで、Enterをクリックするとパッケージ情報を収集し始めるのでしばし待機!

 

しばらくすると「'ClosedXML 0.93.1' が (ネームスペース名) に正常にインストールされました」って文字が出てきたら成功!

最後に「using ClosedXML.Excel」を追加して完成

 

 

これでエクセルを操作するための下準備が出来ました。

 

既存のExcelファイルの読み込み

次にエクセルファイルを読み込みます。

テンプレートとして下記コードが読み込み時の必須コードになると思います。

 


bookに読み込みたいエクセルファイル

sheetに読み込んだエクセルファイルのsheetを選択(sheet1を選択してます。)

 

Rowに読み込んだsheetの使われているセルの番号を取得

これくらいのデータがあれば後は条件分岐とか繰り返しとか使うと結構なんでも出来ます。

 

新規のExcelファイルを作る

読み込んでばかりじゃいられない!新しく創造したいんだ!って時はこれ

 

XLWorkbook book = new XLWorkbook();
IXLWorksheet sheet = book.AddWorksheet("sample_sheet1");
int row = 1;

 

空のエクセルをbookに入れ、新しく名前を付けたSheetを加え、最後に行移動のためにrowに1を入れておく。

2行で新しいファイル作れるなんて便利なもんだねぇ。

 

Excelファイルの操作

ここまでこれたら次は操作して行くよ!

比較的よく使うであろう関数を独断と偏見によってまとめました。

 

Cell

sheet.Cell(1, 1).Value;

sheet.Cell("A1").Value;

 

これは両方共エクセルのA1のセルの値を取得しています。

 

sheet.Cell(1, 1).Value = "nullpo";

 

とか入れるとエクセルA1のセルに「nullpo」って文字が入ります。

このValueはobjectなので条件分岐なんかで比較する時には

 

if(sheet.Cell(1, 1).Value.ToString() == "nullpo")

 

みたいに文字列に変換しましょう。

セルに色をつける

sheet.Cell(1, 1).Style.Fill.BackgroundColor = XLColor.Red;

 

セルA1のバックグラウンドを赤にする。

XLColorって入れるとその後に色を選択出来るようになるので好きな色を選んでね。

選択出来る色が多すぎて名前だけじゃどんな色か分からないけどねー。

 

ボーダーをつける

sheet.Cell(1, 1).Style.Border.BottomBorder = XLBorderStyleValues.Thick;
sheet.Cell(1, 1).Style.Border.BottomBorderColor = XLColor.Red;

 

 

A1のセルの下側に細いボーダーをつける。

その後にボーダーを赤くする。

って言う処理をしています。

 

名前を付けてExcelファイルを保存

book.saveAs(@"保存先のpath+エクセルファイルの名前");

(例:book.saveAs(@"C:\Users\user\Desktop\sample.xlsx");)

 

ファイル名まで記入するのがミソ。

ここ忘れるとエラーが・・・。

 

Excelファイルを上書き保存

book.save();

で、読み込んだファイルに上書きします。

 

 

おすすめ在宅ワーク一覧⇩

お得な特典があるサービス一覧

注目コンテンツ

新着記事一覧

Lステップ 垢BAN

LINE公式アカウント Lステップ構築 ファンを作るSNS運用とは

Lステップ(LINE公式)で垢BANされる原因とは

LINE公式アカウントが垢BANされる原因を知りたい 本記事では、このような悩みを解決します。     高いお金と労力を使って作ったLINE公式が垢BANされると大損害ですよね。 ...

LINE公式アカウント Lステップ構築 ファンを作るSNS運用とは

Lステップ構築の副業が稼げない理由

Lステップ構築代行業が稼げない理由を知りたい 稼げるLステップ構築者になる方法を知りたい Lステップ構築に必要なスキルを知りたい 本記事では、このような悩みを解決します。     ...

LINE公式アカウント Lステップ構築 ファンを作るSNS運用とは

Lステップ構築代行者・コンサルのなり方!完全ロードマップ

Lステップをマスターして、Lステップ構築代行者として活躍したい! 本記事では、このような悩みを解決します。     『Lステップ』ってやたらと人気だけど、実際どうやってLステップ構 ...

物販副業で稼ぐ秘密

在宅で出来るネットショップの作り方!小規模事業者のための完全ロードマップ

小規模から始めれる売れるネットショップを作る方法を知りたい 本記事では、このような悩みを解決します。     「ネットショップ運営しなきゃいけないのに『予算』も『商品』もない!」 ...

ブログで稼ぐ秘訣

アフィリエイトブログの作り方!完全ロードマップ

収益化出来るブログの作り方が知りたい! 本記事では、このような悩みを解決します。     「ブログアフィリエイトについて調べたけど、どれも抽象的すぎてどうすればいいのか分からない! ...


新着記事一覧を見る

  • この記事を書いた人
  • 最新記事

井川 裕輝

12歳で父親が他界。母子家庭で育ち、貧困を脱出しようと行動と挑戦を繰り返す。【コミュ障・貧困・スキル0】から努力だけで這い上がった努力マン

-C#

© 2022 在宅ワーク副業マスター『WellMaga』