Excel无法识别带有DateTime参数的C#函数
我想用以下函数构造Excel加载项:Excel无法识别带有DateTime参数的C#函数,c#,excel,add-in,excel-dna,C#,Excel,Add In,Excel Dna,我想用以下函数构造Excel加载项: [ExcelFunction()] public static double myAverage1(double[] inputVector) { return inputVector.Sum()/inputVector.Length ; } [ExcelFunction()] public static double myAverage2(DateTime[] TS1_DateTime) { return 12.5; } 问题是E
[ExcelFunction()]
public static double myAverage1(double[] inputVector)
{
return inputVector.Sum()/inputVector.Length ;
}
[ExcelFunction()]
public static double myAverage2(DateTime[] TS1_DateTime)
{
return 12.5;
}
问题是Excel无法识别函数myAverage2
问题与DateTime类型有关,我试图将其更改为字符串类型,但无法识别该函数。你知道怎么解决这个问题吗
我最终想要实现的是给函数两个DateTime数组,并获取它们的交集。根据,Excel DNA应该使用and方法自动封送DateTime
值为double
我自己也没有尝试过,但我猜它不是用来检测数组或DateTime
列表的,而只是单个DateTime
参数
尝试将参数声明为double[]
,然后在函数中执行以下操作:
DateTime dt[] = values.Select(x => DateTime.FromOADate(x)).ToArray();
或者根据函数的需要,对每个值分别调用FromOADate
尽管函数被声明为double[]
,但您仍然可以传递包含日期的单元格数组,因为Excel仍希望将其作为OLE自动化日期传递