C++ 経由で Excel ドキュメントを更新する

Microsoft Office® をインストールせずに、C++ ベースのアプリケーション内で Microsoft Excel XLSX、XLS ファイルを変更します。

 

学生データ、患者記録、倉庫品目リストなどの Excel ファイルに保存されているデータを、会社のソフトウェアを介して更新することは組織にとって一般的です。 Aspose.Total for C++ API は、ソフトウェアを使用してスプレッドシートを変更する機能を提供します。 プログラマーは、数行の API コードを記述するだけで、変更機能を使用してソフトウェアを強化できます。 Aspose.Total for C++ パッケージの一部である Aspose.Cells for C++ API により、この変更プロセスが容易になります。 以下は、Excel ドキュメントを更新するプロセスです。

C++ を使用して Excel ドキュメントを更新する

Aspose.Cells for C++ API を使用して、 CreateIWorkbook を使用してソース ドキュメントを読み込みます。 GetIWorksheets()->GetObjectByIndex(0) を使用して Worksheet にアクセスし、GetICells()->GetObjectByIndex を使用して必要なセルにアクセスします。 PutValue メソッドを使用して、アクセスしたセルの内容を変更します。 最後に、save() メソッドを呼び出してドキュメントを保存します。

C++ コード - Excel ドキュメントの更新

StringPtr dirPath = new String("..\\Data\\sourcePath\\");
StringPtr outPath = new String("..\\Data\\OutputPath\\");
StringPtr srcCSV = dirPath->StringAppend(new String(L"srcFile.csv"));
StringPtr updatedCSV = outPath->StringAppend(new String(L"outReadWriteCSV.csv"));
intrusive_ptr<IWorkbook> wb = Factory::CreateIWorkbook(srcCSV);
intrusive_ptr<IWorksheet> ws = wb->GetIWorksheets()->GetObjectByIndex(0);
intrusive_ptr<ICell> cell = ws->GetICells()->GetObjectByIndex(new String("A1"));
StringPtr strVal = cell->GetStringValue();
StringPtr cellValue = new String("Cell Value: ");
Console::WriteLine(cellValue->StringAppend(strVal));
cell = ws->GetICells()->GetObjectByIndex(new String("C4"));
intrusive_ptr<String> strValPtr = new String(strVal);
cell->PutValue(strValPtr);
wb->Save(updatedCSV, SaveFormat_CSV);