セルデータ形式の設定方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

によって チャクニット・ビン

Excelでのデータフォーマットと数値フォーマットは、セル内の数字、日付、時刻、およびその他のデータの表示方法を制御することができ、読みやすさを向上させ、データの正確性を確保します。 データ形式を使用すると、パーセンテージや通貨のような特定の形式で情報を表示できます。 同様に、数値形式を使用すると、少数点以下の桁数や表示オプションをカスタマイズすることができます。

IronXLライブラリを使用すると、C#でデータフォーマットや数値フォーマットを設定することができます。 このライブラリは、C#アプリケーションにおけるデータ処理およびプレゼンテーションタスクにおいて、Excelファイルの作成、フォーマット、および操作をプログラム的に簡素化するため、非常に貴重なツールです。


IronXLで始めましょう

今日から無料トライアルでIronXLをあなたのプロジェクトで使い始めましょう。

最初のステップ:
green arrow pointer


セルデータ形式設定の例

FormatString プロパティは、セルおよび範囲の両方からアクセスできます。 したがって、個々のセル、列、行、並びに任意に選択された範囲に対してデータ形式を設定することが可能です。

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format.cs
using IronXL;
using IronXL.Formatting;
using System;
using System.Linq;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Set the data format to 12300.00%
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Percent2;

// Set the data format to 123.0000
workSheet["A2"].Value = 123;
workSheet["A2"].FormatString = "0.0000";

// Set data display format to range
DateTime dateValue = new DateTime(2020, 1, 1, 12, 12, 12);
workSheet["A3"].Value = dateValue;
workSheet["A4"].Value = new DateTime(2022, 3, 3, 10, 10, 10);
workSheet["A5"].Value = new DateTime(2021, 2, 2, 11, 11, 11);

IronXL.Range range = workSheet["A3:A5"];

// Set the data format to 1/1/2020 12:12:12
range.FormatString = "MM/dd/yy h:mm:ss";

workBook.SaveAs("dataFormats.xlsx");
Imports IronXL
Imports IronXL.Formatting
Imports System
Imports System.Linq

' Create a new workbook
Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Set the data format to 12300.00%
Private workSheet("A1").Value = 123
Private workSheet("A1").FormatString = BuiltinFormats.Percent2

' Set the data format to 123.0000
Private workSheet("A2").Value = 123
Private workSheet("A2").FormatString = "0.0000"

' Set data display format to range
Private dateValue As New DateTime(2020, 1, 1, 12, 12, 12)
Private workSheet("A3").Value = dateValue
Private workSheet("A4").Value = New DateTime(2022, 3, 3, 10, 10, 10)
Private workSheet("A5").Value = New DateTime(2021, 2, 2, 11, 11, 11)

Private range As IronXL.Range = workSheet("A3:A5")

' Set the data format to 1/1/2020 12:12:12
range.FormatString = "MM/dd/yy h:mm:ss"

workBook.SaveAs("dataFormats.xlsx")
VB   C#
データ形式

文字列としてセルの値を設定

IronXLで値を設定する際、自動変換なしでセルに正確な値を直接割り当てるために Value の代わりに StringValue を使用してください。 この使用方法は、Excelでセルの値の前にアポストロフィを置くのと似ています。

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-stringvalue.cs
// Assign value as string
workSheet["A1"].StringValue = "4402-12";
' Assign value as string
workSheet("A1").StringValue = "4402-12"
VB   C#

組み込みフォーマットの例を使用

IronXLライブラリは、Excelセルの書式設定のために、IronXL.Formatting.BuiltinFormatsクラスを通じてアクセス可能な様々な定義済みフォーマット文字列を提供しており、Excelスプレッドシートでデータの表示方法をカスタマイズすることができます。

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format-builtin-formats.cs
using IronXL;
using IronXL.Formatting;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Use builtin formats
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Accounting0;

workBook.SaveAs("builtinDataFormats.xlsx");
Imports IronXL
Imports IronXL.Formatting

' Create a new workbook
Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Use builtin formats
Private workSheet("A1").Value = 123
Private workSheet("A1").FormatString = BuiltinFormats.Accounting0

workBook.SaveAs("builtinDataFormats.xlsx")
VB   C#

利用可能な組み込みデータ形式

Duration タイプの場合、入力値は日数で表されます。 例えば、1日は24時間に相当し、1.05日は25時間12分に相当します。 以下は利用可能なフォーマットタイプです:

利用可能なすべてのデータ形式

説明

  • 一般: 特定のフォーマットを適用せずに、数値をそのまま表示するデフォルトフォーマット。
  • Duration1:分と秒の単位で持続時間を表示し、「mm:ss」の形式で表示します。Valueプロパティに入力された数値は日数として扱われます。
  • Duration2: 時間、分、秒で持続時間の値を表示します。例: "[h]:mm:ss。
  • Duration3: 分、秒、およびミリ秒の単位で時間の値を表示します。例えば、「mm:ss.0」となります。
  • Accounting0: 負の値を括弧で囲み、小数点以下の桁数なしの会計値にフォーマットします。例:"#,##0_);(#,##0)."
  • Accounting0Red: 負の値を赤で表示し、小数点以下の桁を使わず会計値をフォーマットします。例: "#,##0_");Red。
  • Accounting2:負の値には括弧を使用し、小数点以下2桁の会計値をフォーマットします。例:"#,##0.00;(#,##0.00)."
  • Accounting2Red: 負の値を赤色で表示し、小数点以下2桁の会計値をフォーマットします。例: "#,##0.00_);Red。
  • Time1: 時間値をAM/PM形式の12時間時計でフォーマットします。例: "h:mm AM/PM"。
  • Time2: 時刻を12時間制(秒およびAM/PM付き)でフォーマットする形式です。例えば「h:mm:ss AM/PM」のようになります。
  • Time3: 秒を含まない24時間形式の時刻値を「h:mm」のようにフォーマットします。
  • Time4: 時刻を「h:mm:ss」のように秒付きの24時間制で表記します。
  • ShortDate: 日付値を「m/d/yy」のような短い形式でフォーマットします。
  • ShortDateAndTime: 日付と時間の値を短い形式でフォーマットします。例: "m/d/yy h:mm"。
  • LongDate1: 日付値を月、日、年を含む長い形式でフォーマットします(例:"d-mmm-yy")。
  • LongDate2: 日付値を「d-mmm」のように日と省略された月を含む長い形式でフォーマットします。
  • LongDate3: 日付の値を、月と年が省略形で表された長い形式 (例: "mmm-yy") でフォーマットします。
  • Fraction1:少数を1桁でフォーマットします、「# ?/?」のように。
  • Fraction2: 小数値を2桁でフォーマットします。例:「# ??/??」。
  • Scientific1: 数値を科学的記数法で小数点以下1桁でフォーマットします。例:"##0.0E+0。"
  • Scientific2: 数字を小数点以下2桁の科学記数法で形式化します。例:「0.00E+00」。
  • パーセント: 「0%」のように小数点以下の桁なしでパーセンテージ値をフォーマットします。
  • Percent2: パーセンテージ値を小数点以下2桁でフォーマットします。例えば「0.00%」のように表示されます。

    • Currency0:通貨金額を小数点以下の桁を含まずにフォーマットし、負の値には括弧を使用します。例:"$#,##0_" );($#,##0)."
  • Currency0Red: 通貨の値を小数点以下の桁なしでフォーマットし、負の値に赤色を使用します。例えば "$#,##0_");Red。
  • Currency2: 負の値には括弧を使用し、2桁の小数点を持つ通貨の値をフォーマットします。例: "$#,##0.00;($#,##0.00)."
  • Currency2Red:通貨値を小数点以下2桁でフォーマットし、負の値を赤色で表示します。例:"$#,##0.00_");Red。
  • Thousands0: 数字を千単位区切りで小数点なしの形式にします。例えば "#,##0."
  • Thousands2: 数値を千単位の区切り記号と小数点以下二桁でフォーマットします。例: "#,##0.00"
  • Number0: 小数点のない数字をフォーマットします。例: "0"。
  • Number2: 数値を小数点以下2桁でフォーマットします。例: "0.00"。
  • テキスト: テキスト値を "@" のようなプレーンテキストとしてフォーマットします(指定されたフォーマットはありません。).
Chaknith related to 説明

チャクニット・ビン

ソフトウェアエンジニア

チャクニットは開発者のシャーロック・ホームズです。彼がソフトウェアエンジニアリングの将来性に気付いたのは、楽しみでコーディングチャレンジをしていたときでした。彼のフォーカスはIronXLとIronBarcodeにありますが、すべての製品でお客様を助けることに誇りを持っています。チャクニットは顧客と直接話すことで得た知識を活用して、製品自体のさらなる改善に貢献しています。彼の逸話的なフィードバックは、単なるJiraチケットを超えて、製品開発、ドキュメントおよびマーケティングをサポートし、顧客の全体的な体験を向上させます。オフィスにいないときは、機械学習やコーディングについて学んだり、ハイキングを楽しんだりしています。