问题描述
使用C#
处理Office Interop Objects时,我遇到了一个错误,这是出现错误的主要部分:
using Excel = Microsoft.Office.Interop.Excel;
...
static void DisplayInExcel (IEnumerable<Account> accounts)
{
var excelApp = new Excel.Application();
excelApp.Visible = true;
excelApp.Workbooks.Add();
Excel._Worksheet workSheet = (Excel.Worksheet).excelApp.ActiveSheet;
}
解决方法
您可能错过了代码中的类声明。现在您有了类似的内容:
utils::globalVariables("!<-")
您需要用一个类包装函数
function allCal(){
var events = "";
var ss = SpreadsheetApp.openById('1q5a29MtZz0zzQQ4F8hpsigkZGtCeK7qIh3tGLAZbgPg');
var sheet = ss.getSheetByName('Calendars').activate();
var today = new Date();
var endDate = new Date(today.getTime() + (14 * 24 * 60 * 60 * 1000));
var cals = CalendarApp.getAllCalendars();
for (var i=0;i<cals.length;i++){
var cal = cals[i];
var calId = cal.getId();
events += cal.getEvents(today,endDate);
}
for (var i=0;i<events.length;i++) {
var row=i+1;
var details=[[calId,events[i].getCreators(),events[i].getTitle(),events[i].getLocation(),events[i].getStartTime()]];
var range=sheet.getRange(row,16,1,4);
range.setValues(details);
}}
然后像这样访问它
namespace MyNamespace
{
static void DisplayInExcel (IEnumerable<Account> accounts)
{
var excelApp = new Excel.Application();
excelApp.Visible = true;
excelApp.Workbooks.Add();
Excel._Worksheet workSheet = (Excel.Worksheet)excelApp.ActiveSheet;
}
}