Excel Databar不显示

时间:2016-07-05 16:55:04

标签: excel-vba vba excel

我有两张Excel表格,其中30列中有6列有数据库。它们都使用与下面相同的代码。

但其中一张纸中的两列不显示数据条。当我在条件格式中查看管理规则时,我确实在那里看到了数据库。

然后我根据不同的类别 - 产品,区域等从该表创建了几个文件,这些文件也不一致地不显示数据条。

我在Windows 7 64位上使用Excel 2010 32位。

我做错了什么?在此先感谢您的帮助。

Public Function formatDatabar(wbkO As Workbook, wks As Worksheet, colNo As Integer)

Dim i As Integer, ctr As Integer, col As Integer

wbkO.Activate
Set wks = wbkO.Worksheets(wks.Name)
wks.Activate
ctr = findLastRow(wks.Name)
col = findLastCol(wks.Name)

wbkO.Activate
wks.Activate
wks.Range(wks.Cells(5, 1), wks.Cells(ctr, col)).Select

With Selection
    .Cells.Font.Size = "8"
    .Cells.Font.Bold = False
    .Cells.Font.Name = "Calibri"
    .VerticalAlignment = xlCenter
End With

wks.Range(wks.Cells(5, colNo), wks.Cells(ctr, colNo)).Select

Selection.FormatConditions.AddDatabar
Selection.FormatConditions(Selection.FormatConditions.Count).ShowValue = True
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1)
    .MinPoint.Modify newtype:=xlConditionValueAutomaticMin
    .MaxPoint.Modify newtype:=xlConditionValueAutomaticMax
End With
With Selection.FormatConditions(1).BarColor
    .ThemeColor = xlThemeColorAccent6
    .TintAndShade = 0.13012579
End With
Selection.FormatConditions(1).BarFillType = xlDataBarFillGradient
Selection.FormatConditions(1).Direction = xlContext
Selection.FormatConditions(1).NegativeBarFormat.ColorType = xlDataBarColor
Selection.FormatConditions(1).BarBorder.Type = xlDataBarBorderSolid
Selection.FormatConditions(1).NegativeBarFormat.BorderColorType = _
    xlDataBarColor
With Selection.FormatConditions(1).BarBorder.Color
    .ThemeColor = xlThemeColorAccent6
    .TintAndShade = 0.13012579
End With
Selection.FormatConditions(1).AxisPosition = xlDataBarAxisAutomatic
With Selection.FormatConditions(1).AxisColor
    .Color = 0
    .TintAndShade = 0
End With
With Selection.FormatConditions(1).NegativeBarFormat.Color
    .Color = 255
    .TintAndShade = 0
End With
With Selection.FormatConditions(1).NegativeBarFormat.BorderColor
    .Color = 255
    .TintAndShade = 0
End With

结束功能

1 个答案:

答案 0 :(得分:0)

在第2472行中,%非常高,使其他所有人几乎都没有。这导致所有其他行的数据条不显示。

感谢Scott的帮助。