VBA图表系列将颜色填充设置为“自动”

时间:2013-11-20 13:18:47

标签: vba charts colors series

我想在我的堆栈图表中突出显示一些系列 - 这是我已经实现的。 但是图表是动态的,所以当我改变选择时我需要突出显示其他系列。 但是之前强调的内容仍然很突出。

我正在考虑在所有系列中调整一个循环,并在每次更改源时将系列的填充颜色指定为“自动”。然后我可以突出显示所需的系列。

我找到了两个使用属性发送颜色的选项

.Interior.Color

.Format.Fill.ForeColor.SchemeColor

但我使用RGB颜色模型来设置颜色。

如何在图表模板中返回“自动”颜色,即默认颜色。我应该为上面的属性分配什么值?

谢谢!

3 个答案:

答案 0 :(得分:0)

我用过: .Interior.Color = xlNone

答案 1 :(得分:0)

是自定义图表模板吗?如果是这样,您可能拥有模板的RGB值的自定义列表。

否则,您可以只使用工作簿主题的默认颜色。

此代码将六种默认工作簿主题颜色重新应用于图表。如果有超过六个系列,主题颜色重复。 Excel也改变了后续六个系列的亮度,但我没有打扰。如果你需要调整亮度,我可以回来实现它。

<?php

require 'connection.php';
$conn    = Connect();
$articolazione    = $conn->real_escape_string($_POST['articolazione']);
$nome   = $conn->real_escape_string($_POST['nome']);
$cognome    = $conn->real_escape_string($_POST['cognome']);
$numero = $conn->real_escape_string($_POST['numero']);
$citta = $conn->real_escape_string($_POST['citta']);
$anno = $conn->real_escape_string($_POST['anno']);


$arr = array();
array_push($arr, "articolazione", "nome", "cognome", "numero", "citta", "anno");





$query   = "INSERT into tb_cform (articolazione,nome,cognome,numero,citta,anno) VALUES('" . $articolazione . "','" . $nome. "','" . $cognome . "','" . $numero . "','" . $citta . "','" . $anno . "')";
$success = $conn->query($query);

if (!$success) {
    die("Couldn't enter data: ".$conn->error);

}

echo "Richiesta Inviata con Successo<br>";

$conn->close();

?>

编辑:事实证明,我们可以使用Excel 2003中已弃用且仍在使用的语法将自动格式重新应用于图表系列:

Sub ReapplyDefaultColors()
  Dim iSrs As Long, nSrs As Long
  Dim iThemeColor As MsoThemeColorIndex
  If ActiveChart Is Nothing Then
    MsgBox "Select a chart and try again.", vbExclamation, "No Active Chart"
  Else
    iThemeColor = msoThemeColorAccent1
    With ActiveChart
      nSrs = .SeriesCollection.Count
      For iSrs = 1 To nSrs
        .SeriesCollection(iSrs).Format.Fill.ForeColor.ObjectThemeColor = _
            iThemeColor
        iThemeColor = iThemeColor + 1 ' msoThemeColorAccent2, 3, 4, etc.
        If iThemeColor > msoThemeColorAccent6 Then
          ' recycle colors
          ' should also adjust brightness
          iThemeColor = msoThemeColorAccent1
        End If
      Next
    End With
  End If
End Sub

答案 2 :(得分:0)

我正在使用EXCEL2010。 要自动重置我的条形颜色,请使用以下语法:

istogramma.Interior.Pattern = xlAutomatic

直方图是我的系列的名称