我在Excel 2013中有一些非常简单的代码,它隐藏了几个列并对表中的某些记录进行了排序。出于某种原因,它还隐藏了当前的单元格突出显示。
不确定是代码还是excel错误。有什么想法吗?
If ActiveWindow.FreezePanes = True Then ActiveWindow.FreezePanes = False
wsDailyCheckDump.Range("$B:$H, $J:$Q, $T:$W, $Y:$Z, $AB:$AB, $AD:$AK, $AM:$AN, $AS:$AV, $AZ:$BF, $BG:$BK, $BM:$DC, $DJ:$DL, $DN:$DR").Columns.Hidden = True
Set rngSortA = tblDailyCheck.ListColumns(49).Range
Set rngSortB = tblDailyCheck.ListColumns(18).Range
Set rngSortC = tblDailyCheck.ListColumns(9).Range
With tblDailyCheck.Sort
.SortFields.Clear
.SortFields.Add rngSortA, xlSortOnValues, xlAscending
.SortFields.Add rngSortB, xlSortOnValues, xlAscending
.SortFields.Add rngSortC, xlSortOnValues, xlAscending
.Header = xlYes
.MatchCase = False
.Apply
End With
wsDailyCheckDump.Range("$X$5").Offset(1, 0).Select '.SpecialCells(xlCellTypeVisible).Offset(1, 0).Select
ActiveWindow.FreezePanes = True
Set rngA = wsDailyCheckDump.Range("$A$5").End(xlToRight)
rngA.Select
Set rngA = ActiveCell
rngA.Select
答案 0 :(得分:0)
.Select
移动活动(当前)单元格。您必须将ActiveCell
的位置保存到范围变量中,并在子例程结束前将.Select
该变量保存。