所以我有一个访问查询,我想发回excel。虽然使用导出向导很好,但我想为导出过程添加更多自动化。到目前为止,我正在处理代码,因此在导出过程中,最终的 excel 工作表将具有一些格式。就基本格式而言,我很好,我找到了很多资源来帮助我。
我的问题是我想设置条件格式,以便如果特定列(G)有一个值,那么整行都会突出显示。我对如何通过 Access 中的 vba 代码为 Excel 设置条件格式有点迷茫
这是我所拥有的
Dim appExcel As Variant
Dim MyStr As String
Dim rng As Excel.Range
' Creates Excel object and Adds a Workbook to it
Set appExcel = CreateObject("Excel.application")
appExcel.Visible = False
appExcel.Workbooks.Add
Set wksNew = appExcel.Worksheets("Sheet1")
appExcel.Visible = True
' The first thing I do to the worksheet is to set the font.
' Not all are required, but I included them as examples.
With appExcel
.Cells.Font.Name = "Calbri"
.Cells.Font.Size = 11
.Cells.NumberFormat = "@" 'all set to Text Fields
' My first row will contain column names, so I want to freeze it
.Rows("2:2").Select
.ActiveWindow.FreezePanes = True
' ... and I want the header row to be bold
.Rows("1:1").Font.Bold = True
.Rows("1:1").Font.ColorIndex = 1
.Rows("1:1").Interior.ColorIndex = 15
' Adds conditional formatting based on Values in the G column
rng = .Range("A2:J20").Select
rng.FormatConditions.Add Type:=xlExpression, Formula1:="=NOT($G2 = 0)"
rng.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With appExcel.Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 65535
.TintAndShade = 0
End With
End With
目前,代码一直执行到我的条件格式化块,然后它告诉我对象变量或 With 块未设置。