Excel スプレッドシート用のオープン ソース C++ ライブラリ 

オープン ソース C++ API を介して Microsoft® Excel スプレッドシート ファイルを読み取り、書き込み、編集、変換します。

OpenXLSXとは何ですか?

OpenXLSX はオープンソースの C++ ライブラリであり、コンピューター プログラマーが Excel ファイルの読み取り、書き込み、作成、変更を行うだけでなく、依存関係の少ないデータの書式設定も行うことができます。これは進行中の作業であり、スプレッドシートの作成と操作に必要なすべての重要な機能を提供することを目的としています。

OpenXLSX は、スプレッドシート ファイルの作成、開く、保存、セルの内容の読み取りまたは書き込みと変更、セルとセル範囲のコピー、ワークシートのコピーなど、いくつかの重要な機能のサポートを提供します。 OpenXLSX は、Windows、Linux、Linux などの複数のプラットフォームでビルドおよび実行できます。

Previous Next

OpenXLSX 入門

現在の安定版は CRAN で入手できます。以下のコマンドでインストールしてください。

CRAN経由でOpenXLSXをインストール

 install.packages("openxlsx", dependencies = TRUE) 

開発版

install.packages("openxlsx", dependencies = TRUE) 
  require(devtools)
  install_github("ycphs/openxlsx")
  

スプレッドシート ファイルを作成および変更するための C++ API

オープンソース API OpenXLSX を使用すると、プログラマーはゼロから Excel スプレッドシートを生成できます。また、既存のスプレッドシートを簡単に変更するためのサポートも提供します。既存のファイルを変更するには、そのファイルを開いて、ファイルに含めるデータを挿入する必要があります。新しいワークシートを作成して空のワークブックに追加したり、データを追加したりできます。シートに名前を付けたり、コンテンツを追加したりすることもできます。次の手順を使用すると、C++ で Microsoft Excel ドキュメントを作成できます。

C++ で Excel ドキュメントを作成する

  1. XLDocument オブジェクトの初期化
  2. ドキュメントを作成
  3. ドキュメントにワークシートを追加
  4. セルにテキストを追加
  5. ドキュメントを保存

Excel を簡単に作成 - C++

// initialize XLDocument
XLDocument doc;
// create document
doc.create("./Demo01.xlsx");
// add worksheet
auto wks = doc.workbook().worksheet("Sheet1");
// add text
wks.cell(XLCellReference("A1")).value() = " Hello OpenXLSX! ";
// save document
doc.save();
                  

ワークブックまたはワークシートを保護する

Evert 組織は、必要なデータを収集するために懸命に取り組んでおり、誰にもデータをいじってほしくありません。 OpenXLSX は、開発者が ワークブック のさまざまな部分を編集できないようにする機能を提供します。誰がそれを開くことさえできるかを制限するパスワードを提供することで、それを保護することができます.ワークブックの特定の部分を保護し、必要に応じてユーザーが他の部分を変更できるようにすることは、常に役に立ちます。

C++による修正からExcelのクックブックを保護する

wb <- createWorkbook()
addWorksheet(wb, "S1")
writeDataTable(wb, 1, x = iris[1:30, ])
# Formatting cells / columns is allowed , but inserting / deleting columns is protected:
protectWorksheet(wb, "S1",
protect = TRUE,
lockFormattingCells = FALSE, lockFormattingColumns = FALSE,
lockInsertingColumns = TRUE, lockDeletingColumns = TRUE
)
# Remove the protection
protectWorksheet(wb, "S1", protect = FALSE)
## Not run:
saveWorkbook(wb, "pageSetupExample.xlsx", overwrite = TRUE)

ワークシートの列幅の管理

オープンソース API OpenXLSX を使用すると、ソフトウェア プログラマーはワークシートの列幅を特定の幅に設定したり、自動幅サイズ調整の「自動」に設定したりできます。 setColWidths 関数で width = "auto" を使用して、データに基づいて列を自動的に広げることができます。セルの結合 を使用して、データ フレームの列ヘッダーのヘッダーを作成することもできます。また、列を非表示にする機能も提供します。

 日本