AddLabel
Folgendes VBA-Unterprogramm SetDateInDiagram() fügt in alle Charts einer Excel-Datei ein Textfeld / Label rechts oben mit dem aktuellen Monat (Januar, Februar ...) und Jahr (vierstellig) ein. Mit der Funktion CheckLabelExists(...) wird geprüft, ob ein Label mit dem Namen "Stand" bereits existiert.
Code: SetDateInDiagram |
Private Function CheckLabelExists(argChart As Object, argName As String) As Boolean Dim obj As Object CheckLabelExists = False For Each obj In argChart.Shapes If UCase(obj.Name) = UCase(argName) Then CheckLabelExists = True: Exit Function Next obj End Function Sub SetDateInDiagram() ' ' Stand Makro ' Einfügen des Standes des Diagrames ' Dim mySheet As Worksheet Dim myChart As Chart For Each mySheet In Worksheets If mySheet.ChartObjects.Count > 0 Then Set myChart = mySheet.ChartObjects(1).Chart If Not CheckLabelExists(myChart, "Stand") Then With myChart.Shapes.AddLabel(msoTextOrientationHorizontal, 380, 4, 144, 20) .Name = "Stand" .TextFrame.Characters.Text = Format(Date, "mmmm yyyy") .TextFrame.Characters.Font.Size = 12 .TextFrame.Characters.Font.Bold = True .TextFrame.HorizontalAlignment = xlHAlignRight End With Else myChart.Shapes("Stand").TextFrame.Characters.Text = Format(Date, "mmmm yyyy") myChart.Shapes("Stand").TextFrame.HorizontalAlignment = xlHAlignRight End If End If Next End Sub
|