チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
XML は異なるシステム間でデータを交換するためによく使用されます。一方、Excel はデータ分析やレポート作成のための広く認識された形式です。XML データを Excel に変換することで、Excel の強力な機能を活用してデータをより効果的に分析し、視覚化できます。この変換プロセスは、金融、医療、e コマースなど、さまざまな業界で重要です。
この記事では、Spire.XLS for .NET を使用して C# で XML を Excel および PDF に変換する方法を学びます。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
XML を Excel に変換する前に、XML ファイルの構造を理解することが重要です。XML は、タグを使用して要素、属性、データを定義するマークアップ言語です。これらのコンポーネントを以下のように分類できます。
<person>
<name>鈴木美咲</name>
<age>30</age>
</person>
<person id="1">
<name>鈴木美咲</name>
<age>30</age>
</person>
.NET では、XML ファイルを操作するためのクラスを提供する System.Xml.Linq 名前空間を使用できます。主に使用されるクラスは XDocument で、XML ドキュメントを簡単に読み込み、操作できます。
以下はその例です:
using System;
using System.Xml.Linq;
class Program
{
static void Main()
{
// XMLファイルを読み込む
XDocument doc = XDocument.Load("data.xml");
XElement root = doc.Root;
// 要素を繰り返し処理する
foreach (XElement person in root.Elements("person"))
{
string name = person.Element("name")?.Value;
string age = person.Element("age")?.Value;
// 名前と年齢を出力
Console.WriteLine($"名前: {name}, 年齢: {age}");
}
}
}
ML データを解析した後、次はそのデータを Excel ワークシートにマッピングします。Spire.XLS for .NET を使用して、新しいワークブックを作成し、特定のセルにデータを入力し、さまざまなスタイルや書式設定を適用できます。これには、列の幅を自動調整、テキストの配置調整、ヘッダーを太字にすることが含まれます。
C# で XML を Excel に変換する手順は以下の通りです:
以下のコードは、XML データを読み取り、それを Excel ファイルにインポートする効率的で高度な方法を示しています。
using Spire.Xls;
using System.Xml.Linq;
namespace ConvertXmlToExcel
{
class Program
{
static void Main(string[] args)
{
// Workbookオブジェクトを作成
Workbook workbook = new Workbook();
// デフォルトのワークシートを削除
workbook.Worksheets.Clear();
// ワークシートを追加し、名前を付ける
Worksheet worksheet = workbook.Worksheets.Add("Books");
// XMLファイルを読み込む
XDocument xmlDoc = XDocument.Load("Sample.xml");
XElement xmlRoot = xmlDoc.Root;
// 最初の"book"要素を取得
XElement firstBook = xmlRoot.Element("book");
// ヘッダー情報を抽出してリストに変換
var headers = firstBook.Elements().ToList();
// ヘッダーをExcelに書き込む
for (int colIndex = 0; colIndex < headers.Count; colIndex++)
{
string headerText = headers[colIndex].Name.LocalName;
worksheet.SetValue(1, colIndex + 1, headerText);
}
// 他のデータをExcelに書き込む
int rowIndex = 2;
foreach (XElement book in xmlRoot.Elements("book"))
{
var dataNodes = book.Elements().ToList();
for (int colIndex = 0; colIndex < dataNodes.Count; colIndex++)
{
string value = dataNodes[colIndex].Value;
worksheet.SetValue(rowIndex, colIndex + 1, value);
}
rowIndex++;
}
// 列の幅を自動調整
worksheet.AllocatedRange.AutoFitColumns();
// 配置を設定
worksheet.AllocatedRange.HorizontalAlignment = HorizontalAlignType.Left;
// フォントスタイルを設定
worksheet.Range["A1:F1"].Style.Font.IsBold = true;
// Excelファイルとして保存
workbook.SaveToFile("output/XMLToExcel.xlsx");
// リソースを解放
workbook.Dispose();
}
}
}
前の例では、XML ファイルからデータを Excel ワークシートにインポートする方法を示しました。このワークシートは、その後、Worksheet.SaveToPdf() メソッドを使用して PDF ファイルに変換できます。PDF を構造的に整えるために、ページレイアウト設定(マージンやグリッド線の保持など)を調整することが必要です。
XML を PDF に変換する手順は以下の通りです:
以下のコードスニペットは、XML データをワークシートにインポートし、その後、そのワークシートを PDF ファイルとして保存する方法を示しています。
using Spire.Xls;
using Spire.Xls.Core;
using System.Xml.Linq;
namespace ConvertXmlToPdf
{
class Program
{
static void Main(string[] args)
{
// Workbookオブジェクトを作成
Workbook workbook = new Workbook();
// デフォルトのワークシートを削除
workbook.Worksheets.Clear();
// ワークシートを追加し、名前を付ける
Worksheet worksheet = workbook.Worksheets.Add("Books");
// XMLファイルを読み込む
XDocument xmlDoc = XDocument.Load("Sample.xml");
XElement xmlRoot = xmlDoc.Root;
// 最初の"book"要素を取得
XElement firstBook = xmlRoot.Element("book");
// ヘッダー情報を抽出してリストに変換
var headers = firstBook.Elements().ToList();
// ヘッダーをExcelに書き込む
for (int colIndex = 0; colIndex < headers.Count; colIndex++)
{
string headerText = headers[colIndex].Name.LocalName;
worksheet.SetValue(1, colIndex + 1, headerText);
}
// 他のデータをExcelに書き込む
int rowIndex = 2;
foreach (XElement book in xmlRoot.Elements("book"))
{
var dataNodes = book.Elements().ToList();
for (int colIndex = 0; colIndex < dataNodes.Count; colIndex++)
{
string value = dataNodes[colIndex].Value;
worksheet.SetValue(rowIndex, colIndex + 1, value);
}
rowIndex++;
}
// 列の幅を自動調整
worksheet.AllocatedRange.AutoFitColumns();
// 配置を設定
worksheet.AllocatedRange.HorizontalAlignment = HorizontalAlignType.Left;
// フォントスタイルを設定
worksheet.Range["A1:F1"].Style.Font.IsBold = true;
// ページ設定を行う
workbook.ConverterSetting.SheetFitToPage = true;
PageSetup pageSetup = worksheet.PageSetup;
pageSetup.TopMargin = 0.3;
pageSetup.BottomMargin = 0.3;
pageSetup.LeftMargin = 0.3;
pageSetup.RightMargin = 0.3;
// グリッド線を保持
pageSetup.IsPrintGridlines = true;
// PDFとして保存
worksheet.SaveToPdf("output/XMLToPDF.pdf");
// リソースを解放
workbook.Dispose();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
HTML(HyperText Markup Language)は、主にウェブページのコンテンツを構造化するために使用されます。情報を視覚的にウェブ上で提示することに優れていますが、Excel のような表計算ソフトウェアに見られる強力な分析機能やデータ操作機能が欠けています。HTML データを Excel に変換することで、ユーザーは Excel の高度な機能(数式、グラフ、表、マクロなど)を活用し、データを効率的に整理・分析することができます。本記事では、C# で Spire.XLS for .NET を使用して HTML ファイルを Excel ファイルに変換する方法を説明します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Spire.XLS for .NET は、HTML ファイルを読み込むために Workbook.LoadFromHtml() メソッドを提供しています。HTML ファイルを読み込んだ後、Workbook.SaveToFile() メソッドを使用して簡単に Excel 形式で保存できます。手順は以下の通りです。
using Spire.Xls;
namespace HTMLToExcel
{
class Program
{
static void Main(string[] args)
{
// Workbookのインスタンスを作成
Workbook wb = new Workbook();
// HTMLファイルを読み込む
wb.LoadFromHtml("Sample.html");
// HTMLファイルをExcelファイルに変換して保存
wb.SaveToFile("output/HTMLをExcelに変換.xlsx", FileFormat.Version2016);
// リソースを解放
wb.Dispose();
}
}
}
HTML ファイルを Excel に変換するだけでなく、Spire.XLS for .NET を使用すると、CellRange.HtmlString プロパティを利用して Excel のセルに HTML 文字列を挿入することもできます。手順は以下の通りです。
using Spire.Xls;
namespace InsertHtmlStringInExcel
{
internal class Program
{
static void Main(string[] args)
{
// ワークブッククラスのオブジェクトを作成
Workbook workbook = new Workbook();
// 最初のシートを取得
Worksheet sheet = workbook.Worksheets[0];
// HTML文字列を指定
string htmlCode = "<span style='font-size: 20px; color: blue;'><strong><u>従業員データテーブル</u></strong></span>";
// HTML文字列を追加するセルを取得
CellRange range = sheet.Range["A1"];
// セルにHTML文字列を追加
range.HtmlString = htmlCode;
// 結果のワークブックを新しいファイルに保存
workbook.SaveToFile("output/ExcelにHTML文字列を挿入.xlsx", ExcelVersion.Version2013);
// リソースを解放
workbook.Dispose();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
CSV は、アプリケーション間で表形式のデータを交換する際によく使われるファイル形式の 1 つです。しかし、状況によっては、CSV が最も適切なファイル形式でない場合もあります。例えば、重要な顧客に送信する必要がある CSV レポートがある場合、顧客のデバイス上でファイルがそのまま表示されるようにする最善の方法は、PDF に変換することです。この記事では、C# と .NET で Spire.XLS for .NET を使用して CSV を PDF に変換する方法を紹介します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Spire.XLS for .NET には、CSV ファイルをロードする Workbook.LoadFromFile(filePath, separator) メソッドと、ファイルを PDF ドキュメントに保存する Worksheet.SaveToPdf() メソッドがあります。これらの 2 つのメソッドを使用することで、開発者は、任意の CSV ファイルを PDF 文書に楽々変換することができます。
CSV ファイルにはフォーマット設定が含まれていないことに注意すべきである。整形された変換結果を確実にするためには、CSV ファイルを PDF 文書として保存する前に、行や列のオートフィットのような、いくつかの基本的なフォーマット設定を行う方がよいでしょう。
詳しい手順は以下の通りです。
using Spire.Xls;
namespace ConvertCsvToPdf
{
class Program
{
static void Main(string[] args)
{
//Workbookインスタンスを作成
Workbook wb = new Workbook();
//CSVファイルを読み込む
wb.LoadFromFile("Sample.csv", ",");
//Worksheetが1つのPDFページに変換されるようにSheetFitToPageプロパティをtrueに設定
wb.ConverterSetting.SheetFitToPage = true;
//最初のワークシートを取得
Worksheet sheet = wb.Worksheets[0];
//ワークシート内の列をループ
for (int i = 1; i < sheet.Columns.Length; i++)
{
//列を自動調整
sheet.AutoFitColumn(i);a
}
//ワークシートをPDFに保存
sheet.SaveToPdf("CSVをPDFに変換.pdf");
wb.Dispose();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Excel ファイルでは、数値データを視覚化するためにチャートが一般的に使用されます。場合によっては、Excel ファイル内のチャートを画像として保存し、他のプログラムや PDF、PowerPoint プレゼンテーションなどのファイルで使用する必要があります。この記事では、C# で Spire.XLS for .NET を使用して Excel のチャートを画像に変換する方法を示します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Spire.XLS for .NET は、指定したワークシート内の特定のチャートを画像に変換するための Workbook.SaveChartAsImage(Worksheet worksheet, int chartIndex) メソッドを提供します。以下は詳細な手順です:
using Spire.Xls;
using System.Drawing;
using System.Drawing.Imaging;
namespace ConvertAExcelChartToImage
{
internal class Program
{
static void Main(string[] args)
{
// Workbookクラスのインスタンスを初期化する
Workbook workbook = new Workbook();
// Excelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx");
// 最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
// 最初のワークシートの最初のチャートを画像として保存する
Image image = workbook.SaveChartAsImage(sheet, 0);
// 画像を.pngファイルとして保存する
image.Save(@"output\chart.png", ImageFormat.Png);
workbook.Dispose();
}
}
}
Excel ワークシート内のすべてのチャートを画像に変換するには、Workbook.SaveChartAsImage(Worksheet worksheet) メソッドを使用できます。以下は詳細な手順です:
using Spire.Xls;
using System.Drawing;
using System.Drawing.Imaging;
namespace ConvertAllExcelChartsToImages
{
internal class Program
{
static void Main(string[] args)
{
// Workbookクラスのインスタンスを初期化する
Workbook workbook = new Workbook();
// サンプルExcelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx");
// 最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
// 最初のワークシートのチャートを画像として保存する
Image[] imgs = workbook.SaveChartAsImage(sheet);
// 画像をpngファイルとして保存する
for (int i = 0; i < imgs.Length; i++)
{
imgs[i].Save(string.Format(@"output\images\chart-{0}.png", i), ImageFormat.Png);
}
workbook.Dispose();
}
}
}
Excel のチャートシートを画像に変換するには、Workbook.SaveChartAsImage(ChartSheet chartSheet) メソッドを使用できます。以下は詳細な手順です:
using Spire.Xls;
using System.Drawing;
using System.Drawing.Imaging;
namespace ConvertExcelChartSheetToImage
{
internal class Program
{
static void Main(string[] args)
{
// Workbookクラスのインスタンスを初期化する
Workbook workbook = new Workbook();
// サンプルExcelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx");
// 最初のチャートシートを取得する
ChartSheet chartSheet = workbook.GetChartSheetByName("Chart1");
// 最初のチャートシートを画像として保存する
Image image = workbook.SaveChartAsImage(chartSheet);
// 画像を.pngファイルとして保存する
image.Save(@"output\chartSheet.png", ImageFormat.Png);
workbook.Dispose();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
SVG(Scalable Vector Graphics)は、ウェブフレンドリーなベクター画像形式です。SVG は他の画像形式に比べて多くの利点があります。最も重要な利点の一つは、解像度に依存しないことです。これにより、画像の品質を損なうことなく、必要に応じて SVG 画像のサイズを変更できます。場合によっては、Excel ファイルをウェブ表示のためにSVGに変換する必要があるかもしれません。本記事では、Spire.XLS for .NET を使用して、C# で Excel ファイルを SVG 形式に変換する方法を示します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Spire.XLS for .NET は、Excel ワークシートを SVG に変換するための Worksheet.SaveToSVGStream() メソッドを提供しています。詳細な手順は以下の通りです:
using Spire.Xls;
using System.IO;
namespace ConvertWorksheetToSVG
{
class Program
{
static void Main(string[] args)
{
// Workbookクラスのインスタンスを作成
Workbook workbook = new Workbook();
// Excelファイルをロード
workbook.LoadFromFile("Sample1.xlsx");
// 最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
// FileStreamクラスのインスタンスを作成
FileStream fs = new FileStream("WorksheetToSVG.svg", FileMode.Create);
// ワークシートをSVGとして保存
sheet.ToSVGStream(fs, 0, 0, 0, 0);
fs.Flush();
fs.Close();
}
}
}
チャートシートは、チャートのみを含むワークシートです。Spire.XLS for .NET は、ChartSheet.ToSVGStream() メソッドを使用してチャートシートを SVG に変換することを可能にします。詳細な手順は以下の通りです:
using Spire.Xls;
using System.IO;
namespace ConvertChartSheetToSVG
{
class Program
{
static void Main(string[] args)
{
// Workbookクラスのインスタンスを作成
Workbook workbook = new Workbook();
// Excelファイルをロード
workbook.LoadFromFile("Sample2.xlsx");
// 最初のチャートシートを取得
ChartSheet chartSheet = workbook.Chartsheets[0];
// FileStreamクラスのインスタンスを作成
FileStream fs = new FileStream("ChartSheetToSVG.svg", FileMode.Create);
// チャートシートをSVGに保存
chartSheet.ToSVGStream(fs);
fs.Flush();
fs.Close();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Open XML は、Microsoft が開発した XML ベースのファイル形式で、文書処理、スプレッドシート、プレゼンテーション、チャート、図解など、さまざまな種類のファイルを保存および交換することができます。この文書形式は、多くの種類のアプリケーションで広く認知され、サポートされており、データを長期保存するための良い選択です。
場合によっては、Excel ファイルを Open XML 形式に変換することで、他のソフトウェアで開いて読み取ることができることを保証できます。一方、Open XML ファイルを Excel 形式に変換することで、データ分析ツール(例えばピボットテーブルやチャート)を使用してデータを処理することもできます。この記事では、Spire.XLS for .NET を使用して、C# および VB.NET でプログラムによって Open XML を Exce にまたは Excel を Open XML に変換する方法を紹介します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Excel ファイルを Open XML に変換するには、Workbook.LoadFromFile(string fileName) メソッドを使用して Excel ファイルを読み込みます。Workbook.SaveAsXml(string fileName) メソッドを使用して Open XML 形式で保存します。次の手順は、Excel ファイルを Open XML に変換する方法を示しています。
using Spire.Xls;
namespace ConvertExcelToOpenXML
{
internal class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを初期化する
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx");
//Excel ファイルをOpen XML 形式で保存する
workbook.SaveAsXml("ExcelToXML.xml");
//ドキュメントを閉じる
workbook.Dispose();
}
}
}
Imports Spire.Xls
Namespace ConvertExcelToOpenXML
Friend Class Program
Private Shared Sub Main(ByVal args As String())
'Workbookクラスのインスタンスを初期化する
Dim workbook As Workbook = New Workbook()
'Excelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx")
'Excel ファイルをOpen XML 形式で保存する
workbook.SaveAsXml("ExcelToXML.xml")
'ドキュメントを閉じる
workbook.Dispose()
End Sub
End Class
End Namespace
Open XML ファイルを Excel に変換するには、Workbook.LoadFromXml(string fileName) メソッドを使用して Open XML ファイルを読み込みます。Workbook.SaveToFile(string fileName, ExcelVersion version) メソッドを使用して Excel 形式で保存します。Open XML ファイルを Excel に変換する手順は次のとおりです。
using Spire.Xls;
namespace ConvertOpenXMLToExcel
{
internal class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを初期化する
Workbook workbook = new Workbook();
//Open XMLファイルを読み込む
workbook.LoadFromXml("ExcelToXML.xml");
//Open XML ファイルを Excel 形式で保存する
workbook.SaveToFile("XMLToExcel.xlsx", ExcelVersion.Version2016);
//ドキュメントを閉じる
workbook.Dispose();
}
}
}
Imports Spire.Xls
Namespace ConvertOpenXMLToExcel
Friend Class Program
Private Shared Sub Main(ByVal args As String())
'Workbookクラスのインスタンスを初期化する
Dim workbook As Workbook = New Workbook()
'Open XMLファイルを読み込む
workbook.LoadFromXml("ExcelToXML.xml")
'Open XML ファイルを Excel 形式で保存する
workbook.SaveToFile("XMLToExcel.xlsx", ExcelVersion.Version2016)
'ドキュメントを閉じる
workbook.Dispose()
End Sub
End Class
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
会社の毎月の支出に関する Word レポートを作成するときは、Excel の財務データをそのレポートにコピーできます。これにより、別の Excel ドキュメントを開くことなく、レポート内の関連データを直接表示できます。この記事では、Spire.Office for .NET を使用して、C# および VB.NET でプログラムによってフォーマットされた Excel データを Word テーブルに変換する方法を紹介します。
まず、Spire.Office for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.Office
Spire.Office for .NET を使用してフォーマットされた Excel データを Word テーブルにエクスポートする手順を次に示します。
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using Spire.Xls;
namespace ConvertExcelToWord
{
internal class Program
{
static void Main(string[] args)
{
//Excelファイルをダウンロードする
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.xlsx");
//最初のシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//Wordドキュメントを作成する
Document doc = new Document();
Section section = doc.AddSection();
section.PageSetup.Orientation = PageOrientation.Landscape;
//テーブルを追加する
Table table = section.AddTable(true);
table.ResetCells(sheet.LastRow, sheet.LastColumn);
//セルをマージする
MergeCells(sheet, table);
for (int r = 1; r <= sheet.LastRow; r++)
{
//行の高さを設定する
table.Rows[r - 1].Height = (float)sheet.Rows[r - 1].RowHeight;
for (int c = 1; c <= sheet.LastColumn; c++)
{
CellRange xCell = sheet.Range[r, c];
TableCell wCell = table.Rows[r - 1].Cells[c - 1];
//ExcelからWordテーブルにデータをエクスポートする
TextRange textRange = wCell.AddParagraph().AppendText(xCell.NumberText);
//ExcelからフォントとセルスタイルをWordにコピーする
CopyStyle(textRange, xCell, wCell);
}
}
//Wordファイルに保存する
doc.SaveToFile("ExportToWord.docx", Spire.Doc.FileFormat.Docx);
}
//次の条件を満たす場合は、セルをマージする
private static void MergeCells(Worksheet sheet, Table table)
{
if (sheet.HasMergedCells)
{
//Excelからマージされたセル範囲を取得する
CellRange[] ranges = sheet.MergedCells;
//Wordテーブル内の対応するセルをマージする
for (int i = 0; i < ranges.Length; i++)
{
int startRow = ranges[i].Row;
int startColumn = ranges[i].Column;
int rowCount = ranges[i].RowCount;
int columnCount = ranges[i].ColumnCount;
if (rowCount > 1 && columnCount > 1)
{
for (int j = startRow; j <= startRow + rowCount; j++)
{
table.ApplyHorizontalMerge(j - 1, startColumn - 1, startColumn - 1 + columnCount - 1);
}
table.ApplyVerticalMerge(startColumn - 1, startRow - 1, startRow - 1 + rowCount -1);
}
if (rowCount > 1 && columnCount == 1)
{
table.ApplyVerticalMerge(startColumn - 1, startRow - 1, startRow - 1 + rowCount -1);
}
if (columnCount > 1 && rowCount == 1)
{
table.ApplyHorizontalMerge(startRow - 1, startColumn - 1, startColumn - 1 + columnCount - 1);
}
}
}
}
//ExcelのセルスタイルをWordテーブルにコピーする
private static void CopyStyle(TextRange wTextRange, CellRange xCell, TableCell wCell)
{
//フォントスタイルをコピーする
wTextRange.CharacterFormat.TextColor = xCell.Style.Font.Color;
wTextRange.CharacterFormat.FontSize = (float)xCell.Style.Font.Size;
wTextRange.CharacterFormat.FontName = xCell.Style.Font.FontName;
wTextRange.CharacterFormat.Bold = xCell.Style.Font.IsBold;
wTextRange.CharacterFormat.Italic = xCell.Style.Font.IsItalic;
//背景色をコピーする
wCell.CellFormat.BackColor = xCell.Style.Color;
//水平方向の配置をコピーする
switch (xCell.HorizontalAlignment)
{
case HorizontalAlignType.Left:
wTextRange.OwnerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Left;
break;
case HorizontalAlignType.Center:
wTextRange.OwnerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center;
break;
case HorizontalAlignType.Right:
wTextRange.OwnerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Right;
break;
}
//垂直方向の配置をコピーする
switch (xCell.VerticalAlignment)
{
case VerticalAlignType.Bottom:
wCell.CellFormat.VerticalAlignment = VerticalAlignment.Bottom;
break;
case VerticalAlignType.Center:
wCell.CellFormat.VerticalAlignment = VerticalAlignment.Middle;
break;
case VerticalAlignType.Top:
wCell.CellFormat.VerticalAlignment = VerticalAlignment.Top;
break;
}
}
}
}
Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields
Imports Spire.Xls
Namespace ConvertExcelToWord
Friend Class Program
static void Main(string() args)
{
'Excelファイルをダウンロードする
Dim workbook As Workbook = New Workbook()
workbook.LoadFromFile("C:\Users\Administrator\Desktop\sample.xlsx")
'最初のシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'Wordドキュメントを作成する
Document doc = New Document()
Dim section As Section = doc.AddSection()
section.PageSetup.Orientation = PageOrientation.Landscape
'テーブルを追加する
Dim table As Table = section.AddTable(True)
table.ResetCells(sheet.LastRow, sheet.LastColumn)
'セルをマージする
MergeCells(sheet, table)
Dim r As Integer
For r = 1 To sheet.LastRow Step r + 1
'行の高さを設定する
table.Rows(r - 1).Height = CType(sheet.Rows(r - 1).RowHeight, single)
Dim c As Integer
For c = 1 To sheet.LastColumn Step c + 1
Dim xCell As CellRange = sheet.Range(r,c)
Dim wCell As TableCell = table.Rows(r - 1).Cells(c - 1)
'ExcelからWordテーブルにデータをエクスポートする
Dim textRange As TextRange = wCell.AddParagraph().AppendText(xCell.NumberText)
'ExcelからフォントとセルスタイルをWordにコピーする
CopyStyle(textRange, xCell, wCell)
Next
Next
'Wordファイルに保存する
doc.SaveToFile("ExportToWord.docx", Spire.Doc.FileFormat.Docx)
}
'次の条件を満たす場合は、セルをマージする
private static void MergeCells(Worksheet sheet, Table table)
{
if (sheet.HasMergedCells)
{
'Excelからマージされたセル範囲を取得する
Dim ranges() As CellRange = sheet.MergedCells
'Wordテーブル内の対応するセルをマージする
Dim i As Integer
For i = 0 To ranges.Length- 1 Step i + 1
Dim startRow As Integer = ranges(i).Row
Dim startColumn As Integer = ranges(i).Column
Dim rowCount As Integer = ranges(i).RowCount
Dim columnCount As Integer = ranges(i).ColumnCount
if (rowCount > 1 And columnCount > 1)
{
Dim j As Integer
For j = startRow To startRow + rowCount Step j + 1
table.ApplyHorizontalMerge(j - 1, startColumn - 1, startColumn - 1 + columnCount - 1)
Next
table.ApplyVerticalMerge(startColumn - 1, startRow - 1, startRow - 1 + rowCount -1)
}
if (rowCount > 1 And columnCount = 1)
{
table.ApplyVerticalMerge(startColumn - 1, startRow - 1, startRow - 1 + rowCount -1)
}
if (columnCount > 1 And rowCount = 1)
{
table.ApplyHorizontalMerge(startRow - 1, startColumn - 1, startColumn - 1 + columnCount - 1)
}
Next
}
}
' ExcelセルスタイルをWordテーブルにコピーする
private static void CopyStyle(TextRange wTextRange, CellRange xCell, TableCell wCell)
{
'フォントスタイルをコピーする
wTextRange.CharacterFormat.TextColor = xCell.Style.Font.Color
wTextRange.CharacterFormat.FontSize = CType(xCell.Style.Font.Size, single)
wTextRange.CharacterFormat.FontName = xCell.Style.Font.FontName
wTextRange.CharacterFormat.Bold = xCell.Style.Font.IsBold
wTextRange.CharacterFormat.Italic = xCell.Style.Font.IsItalic
'背景色をコピーする
wCell.CellFormat.BackColor = xCell.Style.Color
'水平方向の配置をコピーする
Select Case xCell.HorizontalAlignment
Case HorizontalAlignType.Left
wTextRange.OwnerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Left
Exit For
Case HorizontalAlignType.Center
wTextRange.OwnerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center
Exit For
Case HorizontalAlignType.Right
wTextRange.OwnerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Right
Exit For
End Select
'垂直方向の配置をコピーする
Select Case xCell.VerticalAlignment
Case VerticalAlignType.Bottom
wCell.CellFormat.VerticalAlignment = VerticalAlignment.Bottom
Exit For
Case VerticalAlignType.Center
wCell.CellFormat.VerticalAlignment = VerticalAlignment.Middle
Exit For
Case VerticalAlignType.Top
wCell.CellFormat.VerticalAlignment = VerticalAlignment.Top
Exit For
End Select
}
End Class
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
XPS(XML Paper Specification)は、Microsoft が開発したページ記述言語と固定文書フォーマットの仕様です。ドキュメントのレイアウトと各ページの視覚的な外観を定義します。XPS 形式のファイルを取得するには、フォーマット変換によって実現することができます。この記事では、Spire.XLS for .NET を使用して、C# および VB.NET でプログラムによって Excel を XPS に変換する方法を紹介します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Spire.XLS for .NET は、Excel (.xls/.xlsx) を3行のコードだけで XPS に変換できます。具体的な手順は以下の通り。
using Spire.Xls;
namespace ExceltoXPS
{
class Program
{
static void Main(string[] args)
{
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excelサンプルドキュメントをロードする
workbook.LoadFromFile(@"E:\Files\\sample0.xlsx", ExcelVersion.Version2010);
//ExcelをXPSに変換する
workbook.SaveToFile("result.xps", FileFormat.XPS);
}
}
}
Imports Spire.Xls
Namespace ExceltoXPS
Class Program
Private Shared Sub Main(ByVal args() As String)
'Workbookインスタンスを作成する
Dim workbook As Workbook = New Workbook
'Excelサンプルドキュメントをロードする
workbook.LoadFromFile("E:\Files\\sample0.xlsx", ExcelVersion.Version2010)
'ExcelをXPSに変換する
workbook.SaveToFile("result.xps", FileFormat.XPS)
End Sub
End Class
End Namespace
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Excel テーブルを作成して Web ページに公開する場合、最も簡単な方法は HTML ファイルに変換することです。この記事では、Spire.XLS for .NET を使用して、C# および VB.NET でプログラムによって Excel を HTML に変換する方法を紹介します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Spire.XLS for .NET は、Worksheet.SaveToHtml() メソッドを使用して特定の Excel ワークシートを HTML に変換することをサポートしています。以下に詳細な手順を示します。
using Spire.Xls;
namespace XLSToHTML
{
class Program
{
static void Main(string[] args)
{
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excelサンプルドキュメントをロードする
workbook.LoadFromFile(@"sample.xlsx");
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//ワークシートをHTMLファイルとして保存する
sheet.SaveToHtml("ExcelToHTML.html");
}
}
}
Imports Spire.Xls
Namespace Xls2Html
Class Program
Private Shared Sub Main(args As String())
'Workbookインスタンスを作成する
Dim workbook As New Workbook()
'Excelサンプルドキュメントをロードする
workbook.LoadFromFile("sample.xlsx")
'最初のワークシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'ワークシートをHTMLファイルとして保存する
sheet.SaveToHtml("XLSToHTML.html")
End Sub
End Class
End Namespace
Excel ワークシートを埋め込み画像の HTML に変換する手順を次に示します。
using Spire.Xls;
using Spire.Xls.Core.Spreadsheet;
namespace XLSToHTML
{
class Program
{
static void Main(string[] args)
{
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//Excelサンプルドキュメントをロードする
workbook.LoadFromFile(@"sample.xlsx");
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//HTMLOptionsインスタンスを作成する
HTMLOptions options = new HTMLOptions();
//画像をHTMLに埋め込む
options.ImageEmbedded = true;
//ワークシートをHTMLファイルとして保存する
sheet.SaveToHtml("XLS2HTML.html");
}
}
}
Imports Spire.Xls
Imports Spire.Xls.Core.Spreadsheet
Namespace Xls2Html
Class Program
Private Shared Sub Main(args As String())
'Workbookインスタンスを作成する
Dim workbook As New Workbook()
'Excelサンプルドキュメントをロードする
workbook.LoadFromFile("sample.xlsx")
'最初のワークシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'HTMLOptionsインスタンスを作成する
Dim options As New HTMLOptions()
'画像をHTMLに埋め込む
options.ImageEmbedded = True
'ワークシートをHTMLファイルとして保存する
sheet.SaveToHtml("Xls2HTML.html")
End Sub
End Class
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
CSV(コンマ区切り値)ファイルは、コンマで区切られたデータを含むプレーンテキストファイルです。あるアプリケーションから別のアプリケーションにデータをインポートまたはエクスポートするために広く使用されています。場合によっては、CSV と Excel の間での変換を行う必要があります。この記事では、Spire.XLS for .NET ライブラリーを使用して C# および VB.NET でこの機能を実現する方法を紹介します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Excel を CSV に変換する手順は次のとおりです。
using Spire.Xls;
using System.Text;
namespace ConvertAWorksheetToCsv
{
class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを作成する
Workbook workbook = new Workbook();
//Excelファイルをロードする
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//ワークシートをCSVとして保存する
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8);
}
}
}
Imports Spire.Xls
Imports System.Text
Namespace ConvertAWorksheetToCsv
Class Program
Shared Sub Main(ByVal args() As String)
'Workbookクラスのインスタンスを作成する
Dim workbook As Workbook = New Workbook()
'Excelファイルをロードする
workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx")
'最初のワークシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'ワークシートをCSVとして保存する
sheet.SaveToFile("ExcelToCSV.csv", ",", Encoding.UTF8)
End Sub
End Class
End Namespace
CSV を Excel に変換する手順は次のとおりです。
using Spire.Xls;
namespace ConvertCsvToExcel
{
class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを作成する
Workbook workbook = new Workbook();
//CSVファイルを読み込む
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\ExcelToCSV.csv", ",", 1, 1);
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//ワークシートの使用範囲にアクセスする
CellRange usedRange = sheet.AllocatedRange;
//範囲内の数値をテキストとして保存するときのエラーを無視する
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText;
//列と行を自動調整する
usedRange.AutoFitColumns();
usedRange.AutoFitRows();
//結果ファイルを保存する
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013);
}
}
}
Imports Spire.Xls
Namespace ConvertCsvToExcel
Class Program
Shared Sub Main(ByVal args() As String)
'Workbookクラスのインスタンスを作成する
Dim workbook As Workbook = New Workbook()
'CSVファイルを読み込む
workbook.LoadFromFile("C:\Users\Administrator\Desktop\ExcelToCSV.csv", ",", 1, 1)
'最初のワークシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'ワークシートの使用範囲にアクセスする
Dim usedRange As CellRange = sheet.AllocatedRange
'範囲内の数値をテキストとして保存するときのエラーを無視する
usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText
'列と行を自動調整する
usedRange.AutoFitColumns()
usedRange.AutoFitRows()
'結果ファイルを保存する
workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013)
End Sub
End Class
End Namespace
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。