当前位置:文档之家› mfc运用excel的find函数

mfc运用excel的find函数

//SearchOrder (vOpt works here)
#define xlByRows COleVariant( 1L )
#define xlByColumns COleVariant( 2L )

//SearchDirection (required but usually has no effect)
#define xlNext 1L
#define xlPrev 2L

// MatchCase
#define xlMatchCase COleVariant( 1L )
#define xlIgnoreCase COleVariant( 0L )

// MatchByte
// ignored, use vOpt

_variant_t vOpt(DISP_E_PARAMNOTFOUND, VT_ERROR);
LPDISPATCH lpDisp = NULL;

range = sheet.GetUsedRange();
lpDisp =range.Find(COleVariant("A"), vOpt, xlFormulas, xlPart,
xlByRows, xlNext, xlIgnoreCase, vOpt)
if(lpDisp)
{
//first
Range iFirst = range;
iFirst.AttachDispatch(lpDisp);
iFirst.Select();
iFirst.Activate();

TRACE( _T("row=%ld col=%ld\n"), iFirst.GetRow(), iFirst.GetColumn());

Range iNext = range.FindNext(vOpt);
do
{
TRACE( _T("row=%ld col=%ld\n"),
iNext.GetRow(), iNext.GetColumn());

iNext = range.FindNext( _variant_t(iNext) );
} while (iNext.GetRow() != iFirst.GetRow()
|| iNext.GetColumn() !=iFirst.GetColumn() );
}

相关主题
文本预览
相关文档 最新文档