2017-01-09 4 views
0

Ich habe mehrere Blätter in einer Arbeitsmappe. Jedes Blatt enthält Testergebnisse mit identischer Formatierung. Ich möchte ein Makro erstellen, das ein Diagramm in jedem Blatt erstellt, das Daten nur von diesem Blatt darstellt. Ich habe so weit gekommen:Benennen eines Diagramms mit einem Zellenwert aus dem aktiven Blatt

Sub Macro() 
    Dim sSheetName As String 
    sSheetName = ActiveSheet.Name 
    Sheets(sSheetName).Select 
    Range("G7:I5241").Select 'range to plot 
    Range("K7").Select 'location of plot 
    ActiveSheet.Shapes.AddChart2(240, xlXYScatterSmoothNoMarkers).Select 'select plot type 
    ActiveChart.SeriesCollection.NewSeries 
    ActiveChart.FullSeriesCollection(1).Name = "='sSheetName'!R1C2" 'attempting to name the plot by a cell value in the active sheet 

Doch diese letzte Aussage nicht erfolgreich ist, einen Link zu Zelle R1C2 in dem aktiven Blatt zu schaffen.

Screenshot:

Irgendwelche Ideen?

Antwort

0

Sie einen Stringliteral in der Namensvergabe mit:

ActiveChart.FullSeriesCollection(1).Name = "='sSheetName'!R1C2" 

Wenn Sie ein Arbeitsblatt "sSheetName" haben, wird dies, expectedly scheitern. Tun Sie dies statt:

ActiveChart.FullSeriesCollection(1).Name = "='" & sSheetName & "'!R1C2" 

Dieser verwendet den Wert, den Sie zuvor zugewiesen haben, um Ihre Variable sSheetName

Verwandte Themen