我是Vba的初学者。
我尝试使用以下子文件的最后一个insru来隐藏我的工作簿上的单元格网格线,问题是我的工作簿是由两个工作表组成的,而网格线只隐藏其中一个(第一个):
Sub Valores()
Set NewBook = Workbooks.Add
szToday = Format(Date - 1, "YYYYMMDD")
With NewBook
.Title = "Control_Colaterales"
.Subject = "Control Colaterales"
.SaveAs Filename:="V:\Departamento\7920-SOLVENCIA\1. Riesgo de Mercado\2. RIESGO DE CONTRAPARTIDA\1. REPORTING DIARIO R.Contrapartida\1. Enviados\Colaterales\Informe_Control_Colaterales_" & szToday & ".xls"
End With
ThisWorkbook.Worksheets(1).Activate
Cells.Select
Selection.Copy
NewBook.Sheets(1).Activate
ActiveSheet.Name = "CSA y REPO Retrospectivo"
ActiveSheet.Paste
ActiveSheet.Cells.Select
Selection.Copy
ActiveSheet.Range("A1").PasteSpecial xlPasteValues
Worksheets.Add(After:=Sheets(Worksheets.Count)).Name = "CSA y REPO Actual"
ThisWorkbook.Worksheets(1).Activate
Nows = "CSA y REPO Actual"
Worksheets(Nows).Activate
ActiveSheet.Cells.Select
Selection.Copy
NewBook.Sheets(2).Activate
ActiveSheet.Paste
ActiveSheet.Cells.Select
Selection.Copy
ActiveSheet.Range("A1").PasteSpecial xlPasteValues
NewBook.Sheets(1).Activate
ActiveSheet.Range("A1").Activate
ActiveWorkbook.Windows(1).DisplayGridlines = False
End Sub
¿任何人都可以帮助我吗?
非常感谢
答案 0 :(得分:1)
它仅适用于活动工作表,因此请将最后一行更改为:
Worksheets(1).Activate
ActiveWorkbook.Windows(1).DisplayGridlines = False
Worksheets(2).Activate
ActiveWorkbook.Windows(1).DisplayGridlines = False
答案 1 :(得分:1)
尝试像这样循环以隐藏所有工作簿的网格线:
Public Sub TestMe()
Dim cnt As Long
For cnt = 1 To ThisWorkbook.Worksheets.Count
Worksheets(cnt).Activate
Windows(1).DisplayGridlines = False
Next cnt
End Sub
您可以在代码末尾调用Sub
。
编辑:
一种在不激活工作表的情况下执行此操作的方法 - How can I turn off gridlines in excel using VBA, without using ActiveWindow