初めて質問させていただきます。
WindowsXP
Visual C++ 2003
Excel 2003
を使用しております。
ただいま MFCと Officeオートメーションを使用して、
Visual C++ で Excelのセルに値を設定しようとしています。
データ数が変わるので、
アルファベットと数字の文字列でセルを指定する
(A1形式 A1, B2など)のでなく、
行、列ともに数字でセルを指定したい(R1C1形式)のですが、
VBAのCellsプロパティのような指定
(Worksheets(sheet1).Cells(2, 5) のような指定)
ができる関数が見つかりません。
そのような指定の方法がありましたらお教えいただきたく思います。
よろしくお願いいたします。
> (Worksheets(sheet1).Cells(2, 5) のような指定)
何年も前のメモがあった。
VC6とExcel2000ではうまく行ったと思う。
Excel::RangePtr pRange = pSheet->GetCells()->GetItem(2L, 5L);
CString str = 書き込むデータ;
pRange->PutValue((_variant_t)str);
私の場合、CellsからRangeを取得する方法は無駄※が多いのでR1C1形式からA1形式の文
字列を作成してGetRangeオブジェクト(だっけ?)で取得するようにしています。
※Cellsというプロパティではなく実際は
WorksheetオブジェクトのCellsプロパティで取得したRangeオブジェクトに対して
_DefaultプロパティによりRangeオブジェクトを取得している
私が今挑戦している方法
http://support.microsoft.com/kb/308292/JA/
を参考にした方法では、
たいちう様から教えていただいた
GetCells(), GetItem(row, col) の関数は無くて
get_Cells(), get_Item(row, col) がありました。
これらを使っても、うまく動作しませんでした。
ご教示いただいた方法については、勉強いたします。
今回は、Blue様のように、
R1C1形式からA1形式の文字列を作ることにいたします。
ありがとうございました。