要使用COleSafeArray將二維字符串數組寫入Excel,可以按照以下步驟進行操作:
COleSafeArray sa;
DWORD numElements[] = {row, column}; // 設置數組的維度
sa.Create(VT_BSTR, 2, numElements); // 創建一個元素類型為BSTR的二維數組
for (long r = 0; r < row; r++) {
for (long c = 0; c < column; c++) {
CString str = "Your String"; // 替換為要寫入的字符串
BSTR bstr = str.AllocSysString(); // 將CString轉換為BSTR
long indices[] = {r, c}; // 設置要賦值的元素的索引
sa.PutElement(indices, bstr); // 將字符串賦值給數組中的元素
SysFreeString(bstr); // 釋放BSTR內存
}
}
_Application app;
app.CreateDispatch("Excel.Application");
_Workbook workbook = app.GetActiveWorkbook();
_Worksheet worksheet = workbook.GetActiveSheet();
COleVariant covData(sa); // 將COleSafeArray轉換為COleVariant
Range range = worksheet.GetRange(COleVariant("A1"), COleVariant("B2")); // 替換為要寫入的單元格范圍
range.SetValue(covData); // 將COleVariant中的數據寫入單元格
workbook.SaveAs(COleVariant("YourFilePath")); // 替換為要保存的文件路徑
workbook.Close();
app.Quit();
以上是使用COleSafeArray將二維字符串數組寫入Excel的基本步驟,你可以根據自己的需求進行修改和擴展。