Cellの色を変える



///Excelを操作するためのタイプライブラリを読みこむ(Excel2002用)
#import "C:\Program Files\Common Files\Microsoft Shared\Office10\MSO.DLL" no_namespace rename("DocumentProperties", "DocumentPropertiesXL")   
#import "C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\Vbe6ext.olb" no_namespace   
#import "C:\Program Files\Microsoft Office\Office10\EXCEL.EXE" rename("DialogBox", "DialogBoxXL") rename("RGB", "RBGXL") rename("DocumentProperties", "DocumentPropertiesXL") no_dual_interfaces


//Cellの色を変更するコード
void CXlscellcolorDlg::OnButton1() 
{
	COleVariant vColorIdx, vPattern;
	using namespace Excel;
	_ApplicationPtr pXL;

 	//Excelの起動
	pXL.CreateInstance(L"Excel.Application");
	pXL->Visible = TRUE;

	//WorkBookを追加する
	WorkbooksPtr pBooks = pXL->Workbooks;
	_WorkbookPtr pBook  = pBooks->Add((long)xlWorksheet);

	//アクティブ・シートを取得
	_WorksheetPtr pSheet = pXL->ActiveSheet;

	//Cell範囲を指定
	RangePtr pRange = pSheet->Range["B2"]["F10"];

	//Cellのパターンを指定
	vPattern = (long)xlSolid;
	pRange->Interior->PutPattern(vPattern);

	//Cellの色を変更
	vColorIdx = (short)3;
	pRange->Interior->ColorIndex = vColorIdx;


	AfxMessageBox("動作確認のために一時停止");

	pXL->DisplayAlerts = FALSE;
	pXL->Quit();	
}