运行时错误“1004”Range.boarders

接收到这段代码的错误。 我在Excel 2013计算机上使用Excel 2010工作表中的代码,它在没有问题的情况下运行。 我的所有图书馆都正确更新,我们不知道为什么这似乎没有向前兼容。

With Me.Range("T3:Y196") .borders(xlEdgeBottom).Weight = xlThick .borders(xlEdgeLeft).Weight = xlThick .borders(xlEdgeRight).Weight = xlThick '<--- error here .borders(xlEdgeTop).Weight = xlThick '<--- once above code is commented out error occurs here End With 

在这里也收到一个错误:

 With Range(ConvertColumnNumberToLetter(questionTextCol - 1) & CStr(myRow) & ":" & ConvertColumnNumberToLetter(instructionsCol) & CStr(myRow)).borders(xlEdgeTop) 'above Range gives same result as "T3:Y196" but I hard coded it to do some testing in the previous With Statement .LineStyle = xlContinuous '<--- Error .ColorIndex = 0 .TintAndShade = 0 .Weight = xlMedium '<--- Error End With 

现在, .LineStyle.Weight都在代码的其他部分工作,所以我们不知道该怎么做。

当我录制一个macros我得到这个:

 With Selection.Borders(xlEdgeBottom) .LineStyle = xlContinuous .ColorIndex = 0 .TintAndShade = 0 .Weight = xlMedium End With 

当我添加范围内的作品完美(这又是一个干净的工作表):

 With Range("C2:I20") .Borders(xlEdgeBottom).Weight = xlMedium .Borders(xlEdgeRight).Weight = xlMedium .Borders(xlEdgeLeft).Weight = xlMedium .Borders(xlEdgeTop).Weight = xlThick End With 

任何援助将不胜感激。 谢谢!

我不知道这是否会帮助,而不是与Me.Range一起使用尝试设置一个表单对象,并从那里工作。 我倾向于这样减less毛刺。 例

  Dim TheSheet as Worksheet Set TheSheet = Sheets("Your Sheet Name") With TheSheet.Range("T3:Y196") .borders(xlEdgeBottom).Weight = xlThick .borders(xlEdgeLeft).Weight = xlThick .borders(xlEdgeRight).Weight = xlThick '<--- error here .borders(xlEdgeTop).Weight = xlThick End With 

我能想到的唯一的另一件事是合并的单元格问题,其中一半的单元格在设置的范围内,一半的单元格不是。