存储函数变量的值,以便在下次调用函数时再次使用它

时间:2013-08-21 23:59:20

标签: python pywin32

我有一个函数可以确定要突出显示的Excel行。但我只希望一次突出显示一行。因此,当再次调用该函数时,我希望它删除前一行的突出显示(即突出显示为白色),并突出显示新行。

我可以让函数在每次调用时突出显示整个表格。但我真的不想这样做,以防用户已经突出显示其他行。

这是我正在调用的函数:

def highlightSol(self, id):        
    for row, cell in enumerate(self.xl.ActiveSheet.Range('A:A')):
        if id == cell:
            row = self.row + 1
            self.xl.ActiveSheet.Cells(row,1).EntireRow.Interior.Color = 1

这可以突出显示该行。但我希望row的值保持某种程度,以便当再次调用此函数时,我可以不突出显示该行(或者,从技术上讲,突出显示另一种颜色)。

这可能很容易,但出于某种原因,我一直在考虑解决方案。任何帮助将不胜感激。非常感谢!

1 个答案:

答案 0 :(得分:0)

为最后突出显示的元素设置属性:self.highlightRow = row

您可以在班级的None中将属性设置为__init__。然后只需要阅读该属性并取消突出显示该行。