例如:
//omitted
vector<_bstr_t> cellData;
Excel::_WorksheetPtr pSheet = application->ActiveSheet;
Excel::RangePtr pRange = application->Cells;
_bstr_t cellValue = pRange->Item[1][1]; //single cell
cellData.push_back(cellValue);
//omitted
没有:
- MFC
- ATL
问题:
- 如何将多个单元格(例如A1:B1)复制到 vector 中?
- 有没有比Item更合适的方法?
最佳答案
我从未使用 C++ 完成任何 Excel 自动化,但如果它的工作方式与 VBA 宏类似,则 WorkSheet 类应该有一个 Range 属性,该属性返回工作表中的单元格范围。您可以通过提供两个单元格 ID 或表示范围的字符串来指定您想要的范围。
伪 VBA 代码:
Dim range As Range
Set range = ActiveSheet.Range("B12:D34")
Set range = ActiveSheet.Range("B12", "D34")
Set range = ActiveSheet.Range("B12", ActivSheet.Range("D34"))
...
参见 MSDN有关 Range 类的更多信息。
关于c++ - Excel 自动化。如何复制多个单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/573649/