ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Find a date in a range (https://www.excelbanter.com/excel-programming/424365-find-date-range.html)

Jorge Ribeiro

Find a date in a range
 
Hello

I've an excep application in VSTO.
In some point i want to be able to find if a perticular date is in a range.

my code is:

rng = rng.Find( date,
Type.Missing,
Excel.XlFindLookIn.xlFormulas,
Type.Missing,
Type.Missing,
Excel.XlSearchDirection.xlNext,
Type.Missing,
Type.Missing,
Type.Missing);

where rng is a well defined Excel.Range(i've checked it) and date is my
DateTime object to find.

This method find always returns null... i guess that's hapenning 'cause
diferences
in date formats from c# and Excel.

Can you help me here... how can i search a range for a date?!

i'm loosing my mind over here

best regards

Jorge

Bob Phillips[_3_]

Find a date in a range
 
Try casting date to a long,Excel stores dates as long.

--
__________________________________
HTH

Bob

"Jorge Ribeiro" wrote in message
...
Hello

I've an excep application in VSTO.
In some point i want to be able to find if a perticular date is in a
range.

my code is:

rng = rng.Find( date,
Type.Missing,
Excel.XlFindLookIn.xlFormulas,
Type.Missing,
Type.Missing,
Excel.XlSearchDirection.xlNext,
Type.Missing,
Type.Missing,
Type.Missing);

where rng is a well defined Excel.Range(i've checked it) and date is my
DateTime object to find.

This method find always returns null... i guess that's hapenning 'cause
diferences
in date formats from c# and Excel.

Can you help me here... how can i search a range for a date?!

i'm loosing my mind over here

best regards

Jorge




Jorge Ribeiro

Find a date in a range
 
SOLVED:
I first change numberFormat of range to General and then run find method
(didn't find any better way)
Here's my code: input are rng (Range) anda date (date to find)

object oldFormat = rng.NumberFormat;
rng.NumberFormat = "General";
Excel.Range result = rng.Find(date.ToOADate(),
Type.Missing,
Excel.XlFindLookIn.xlFormulas,
Type.Missing,
Type.Missing,
Excel.XlSearchDirection.xlNext,
Type.Missing,
Type.Missing,
Type.Missing);
rng.NumberFormat = oldFormat;

Thanx anyway

Jorge

"Jorge Ribeiro" wrote:

Hello

I've an excep application in VSTO.
In some point i want to be able to find if a perticular date is in a range.

my code is:

rng = rng.Find( date,
Type.Missing,
Excel.XlFindLookIn.xlFormulas,
Type.Missing,
Type.Missing,
Excel.XlSearchDirection.xlNext,
Type.Missing,
Type.Missing,
Type.Missing);

where rng is a well defined Excel.Range(i've checked it) and date is my
DateTime object to find.

This method find always returns null... i guess that's hapenning 'cause
diferences
in date formats from c# and Excel.

Can you help me here... how can i search a range for a date?!

i'm loosing my mind over here

best regards

Jorge



All times are GMT +1. The time now is 09:01 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com