c#Excel2007自动化-如何在循环时遵循无两点规则?

c#Excel2007自动化-如何在循环时遵循无两点规则?,c#,excel,excel-2007,C#,Excel,Excel 2007,我在整个循环中多次使用类似于下面的代码行。除了不遵循“无二点规则”外,一切正常,对吗 我可以将cell.Row存储为int,但是从那里可以到哪里去呢?是否有一个函数允许我传递行号和列字母,并在仍然遵循规则的情况下获取该特定单元格的值 每次我想在循环中获取特定单元格的值时,都要声明并设置range变量,这将是一件痛苦的事情 ^这个链接没有解释两点法则 我想你可以把它拆开 var row = cell.Row; var cell = wksheet.Cells(row, "J"); var val

我在整个循环中多次使用类似于下面的代码行。除了不遵循“无二点规则”外,一切正常,对吗

我可以将cell.Row存储为int,但是从那里可以到哪里去呢?是否有一个函数允许我传递行号和列字母,并在仍然遵循规则的情况下获取该特定单元格的值

每次我想在循环中获取特定单元格的值时,都要声明并设置range变量,这将是一件痛苦的事情


^这个链接没有解释两点法则

我想你可以把它拆开

var row = cell.Row;
var cell = wksheet.Cells(row, "J");
var value = cell.Value;

什么是“无两个点规则”?@RB尝试不获取意外的com引用,然后无法使用Marshal.ReleaseComObject清除这些引用。我猜这一定是@TPR你能展示一下你的循环吗?请注意,wksheet.Cells(int,int)本身就是一个范围,所以您首先将其赋值给一个变量,然后获取它的值,然后封送.ReleaseComObject(range)这就是我的意思,每当我想要得到一个简单的单元格值时,让这两行三行循环都是非常痛苦的。我想我该做我该做的。@TPR如果你经常这样做,我想你可以纠正一个函数,它接受一个工作表、行和列并返回一个值。这也是我想的。
var row = cell.Row;
var cell = wksheet.Cells(row, "J");
var value = cell.Value;