• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

dynamisch maken grafiekbereik

Status
Niet open voor verdere reacties.

arjoderoon

Gebruiker
Lid geworden
2 mei 2007
Berichten
476
hallo allemaal.

In een bestand heb ik een aantal rijen die gevuld worden, afhankelijk van de keuze van de gebruiker.

Gaande weg in de tijd, wordt ook het aantal kolommen groter.

Aan de hand van de data heb ik ook een grafiek hieraan gekoppeld. Maar die ik automatisch wil laten 'aanvullen' als er in een nieuwe regel ook een selectie gemaakt is.

Ik had hiervoor een aan 'naam' bereik aangemaakt met de formule:
=verschuiving('Blad4'!$a$1;0;0;aantalarg($A:$A)+1;aantalarg($1:$1)+1)

En vervolgens heb ik de grafiek gekoppeld aan dit naam bereik.

Dat werkt echter alleen op het moment dat ik de grafiek koppel aan het naambereik.
Wordt er een regel extra ingevuld, dan komt dit niet terug in de grafiek. Enkel op het moment dat ik dan de gegevens van de grafiek weer ga aanpassen.

Hoe kan ik ervoor zorgen dat toch automatisch die extra kolom op het eind of die extra regel onderaan, wel standaard/automatisch meegenomen wordt?

Ik heb al zitten lezen in dit topic: http://www.helpmij.nl/forum/showthr...ch-bereik-van-grafiek?highlight=grafiekbereik

daarin wordt een vba oplossing besproken. Maar hoe kan ik ervoor zorgen dat automatisch de grafiekrange (of eigenlijk het naam bereik) wordt bijgewerkt als er een nieuwe regel ingevuld wordt of als er meer kolommen bij komen?
 
Bij grafieken heb je meestal 2 bereiken.
Die moeten beide dynamisch zijn en even lang.
Je bent volgens mij op de goede weg.
 
Laatst bewerkt:
Thanks. Hoezo moet ik 2 bereiken hebben?

Ik vond deze nog:
http://www.helpmij.nl/forum/showthr...n-met-koppen-en-rijen?highlight=grafiekbereik

interactive chart. Alleen het probleem hierbij is dat de bestaande grafiek gedelete wordt en een nieuwe gemaakt wordt.
En dat moet bij mij juist niet gebeuren. Tenzij ik in de code in kan bouwen dat reeks 1 en reeks 2 een specifieke opmaak kunnen hebben.

ik probeer dit:
Code:
    ActiveChart.SeriesCollection(1).Select
    With Selection.Format.Line
      .Visible = msoTrue
      .DashStyle = msoLineDash
    End With

in te passen in dit:
Code:
Sub CreateChart()
  Dim objChart As ChartObject
  Dim myChtRange As Range
  Dim myDataRange As Range
  With ActiveSheet
    ' What range should chart cover
    
        Set myChtRange = Range("chtArea")   'Range("G2:Q30")
    ' What range contains data for chart
    
        
    Set myDataRange = Range("grafiekrange")
        
        
    ' Cover chart range with chart
    Set objChart = .ChartObjects.Add( _
        Left:=myChtRange.Left, Top:=myChtRange.Top, _
        Width:=myChtRange.Width, Height:=myChtRange.Height)
    ' Put all the right stuff in the chart
    With objChart.Chart
        .ChartArea.AutoScaleFont = False
        .ChartType = xlLine
       .SetSourceData Source:=myDataRange, PlotBy:=xlRows
               .HasTitle = True
               .ChartTitle.Characters.Text = "YTD Afzetontwikkeling (cumulatief) bij AS Watson (KV+TP)"
        .ChartTitle.Font.Bold = True
        .ChartTitle.Font.Size = 12
        With .Axes(xlValue, xlPrimary)
            .HasTitle = False
        End With
    End With
  End With
End Sub

maar ik kom er niet uit met mijn manier van redeneren.
 
Laatst bewerkt:
De meeste grafieken hebben een X-as en een Y-as c.q. een horizontale en een vertikale as.
(Taartdiagrammen dus niet)
Doe anders eens een voorbeeldje uploaden.
 
In Excel 2010 kun je je gegevensbereik 'Opmaken als Tabel' (Startlint - opmaken als tabel). Als je een grafiek maakt obv deze Tabel wordt deze automatisch aangepast zodra je regels of kolommen toevoegt aan de tabel.
 
bedankt voor de suggestie.

Ik probeerde je tip. Ik koos in het lint voor Tabel (CTRL - L) en in het vakje waar je het gegevens bereik in moet vullen heb ik de de naam van het gegevensbereik (grafiekrange) getypt. Vervolgens kreeg ik deze melding: formules in de rijnaam worden verwijderd en geconverteerd naar statische tekst. wilt u doorgaan?[/]

maar dat wil ik nu juist niet...

ik zal kijken of ik een bestandje kan uploaden.

Voor nu zou ik al tevreden zijn als ik het formatten van de series.collection
(2 series gaat het om) in de code weet te integreren.
 
Laatst bewerkt:
Het plaatsen van een goed voorbeeldbestand leidt over het algemeen veel sneller tot een bruikbaar antwoord. Dus als je dat nog zou kunnen bijvoegen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan