我需要你的帮助。我是新的使用范围作为变量,所以可能有一些明显的我失踪,但我似乎无法找到一个解决方案后,大量的谷歌搜索。Excel VBA范围变量引发错误1004 - 我在
我格式化四张数据(标题,漂亮的填充颜色,漂亮的边框)。他们几乎都是一样的,但他们有不同数量的列。为了节省重复的代码,我写了一个过程来完成格式化,另一个过程来改变变量并调用格式化代码。调用代码的
样品:
' Set Customer detail variables.
varGlobalID = Sheets(varWST1Dockets).Cells(2, 13).Value
varCustomerName = Sheets(varWST1Dockets).Cells(2, 14).Value
'格式悬浮的格式代码
' Set Variables
varReportHeading = "Suspended Dockets Investigation"
Set rngDataHeadings = Range("B11", "T11")
Range("B1048576").End(xlUp).Select
Set rngDataTable = Range(Selection, "T11")
Range("B1048576").End(xlUp).Select
Set rngData = Range(Selection, "T12")
' Run Format Reports Procedure
Sheets(varWSSuspended).Select
Call FormatReports
样品
' Format Data Headings
rngDataHeadings.Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = -4300032
.PatternTintAndShade = 0
End With
With Selection.Font
.ColorIndex = 2
.TintAndShade = 0
.Bold = True
End With
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
' 应用边框
rngDataTable.Select
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 2
.TintAndShade = 0
.Weight = xlMedium
End With
该代码似乎工作在变量的第一次运行,但不是第二次。我需要在重置之前卸载它们吗?还是我在做别的愚蠢明显的错误?
在此先感谢。
步骤通过它与F8 ......哪一行,你得到的错误? – Rodger
'varWST1Dockets'是一个字符串还是工作表? – 2016-07-29 03:00:39
如果严格遵循[THIS](http://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros),那么所有这些问题将消失:) –