• 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.

Tekengebied grafiek

Status
Niet open voor verdere reacties.

SUVERMO

Gebruiker
Lid geworden
22 dec 2019
Berichten
481
Hallo,


Is het mogelijk om het tekengebied van een grafiek vullen met de grafiek, in het bijgevoegde bestand staat een plaatje van het gewenste resultaat.
 

Bijlagen

speel met de min en max-waarden van je Y-as (1e en mogelijks 2e)
 
Dat lukt mij niet, waarschijnlijk probeer ik langs de verkeerde weg, kunt u een print screen geven?
via as opmaken komt het al in de richting als primair wordt aangepast
 

Bijlagen

  • as opmaken.jpg
    as opmaken.jpg
    199,5 KB · Weergaven: 77
zet minimum eens op -80 en maximum op 150
of op -79 en +140
 
Laatst bewerkt:
bedankt, werkt prima.

kan een macro dit automatisch doen als de waarden veranderen?
bijvoorbeeld
Berekenen!F2000=200
Berekenen!G2000=-100
 
opgenomen en opgeschoond krijg je dan zoiets:

Code:
Sub Macro4()
    ActiveChart.Axes(xlValue, xlSecondary).MinimumScale = -79
    ActiveChart.Axes(xlValue, xlSecondary).MaximumScale = 140
    ActiveChart.Axes(xlValue, xlSecondary).MajorUnit = 1
    ActiveChart.Axes(xlValue, xlSecondary).MinorUnit = 0.5
End Sub

Als je elders in je macro's de minimale en de maximale waarde ophaal kun je e.e.a. vast helemaal in de macro verwerken
 
Ik vind het nog niet erg opgeschoond.
Gebruik 'With' en 'end with'.
Dan lijkt het al een stuk netter. :D
 
@HSV, u vraagt, wij draaien

Code:
Sub Macro4()
    With ActiveChart.Axes(xlValue, xlSecondary)
        .MinimumScale = -79
        .MaximumScale = 140
        .MajorUnit = 1
        .MinorUnit = 0.5
    End With
End Sub

Hoewel dit wel een regel meer is;)
 
werkt prima, ik merk wel dat het even duurt, heel even, iets meer dan 1 seconde

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
   If Intersect(Target, Range("B2:C2")) Is Nothing Then Exit Sub   'verander je 1 van beide datums

   BEGIN_1 = Range("BEGIN_1").Value
   EIND_1 = Range("EIND_1").Value
   
   ActiveSheet.ChartObjects("Grafiek 1").Activate
   With ActiveChart.Axes(xlValue, xlSecondary)
        .MinimumScale = -79
        .MaximumScale = 140
        .MajorUnit = 1
        .MinorUnit = 0.5
    End With
   
   ActiveChart.SetSourceData Source:=Sheets("Berekenen").Range("A" & BEGIN_1 & ":A" & EIND_1 & _
   ",B" & BEGIN_1 & ":B" & EIND_1 & _
   ",C" & BEGIN_1 & ":C" & EIND_1 & _
   ",D" & BEGIN_1 & ":D" & EIND_1 & _
   ",E" & BEGIN_1 & ":E" & EIND_1 & _
   ",F" & BEGIN_1 & ":F" & EIND_1 & _
   ",G" & BEGIN_1 & ":G" & EIND_1 & _
   ",H" & BEGIN_1 & ":H" & EIND_1 & _
   ",I" & BEGIN_1 & ":I" & EIND_1 & _
   ",J" & BEGIN_1 & ":J" & EIND_1 & _
   ",K" & BEGIN_1 & ":K" & EIND_1 & _
   ",L" & BEGIN_1 & ":L" & EIND_1 & _
",N" & BEGIN_1 & ":N" & EIND_1 & _
",O" & BEGIN_1 & ":O" & EIND_1 & _
",BK" & BEGIN_1 & ":BK" & EIND_1 & _
   ",M" & BEGIN_1 & ":M" & EIND_1)
      
   'voor meer hierboven aanpassen
   
   ActiveSheet.ChartObjects("Grafiek 13").Activate
   ActiveChart.SetSourceData Source:=Sheets("Berekenen").Range("A" & BEGIN_1 & ":A" & EIND_1 & _
   ",C" & BEGIN_1 & ":C" & EIND_1 & _
   ",D" & BEGIN_1 & ":D" & EIND_1 & _
   ",AB" & BEGIN_1 & ":AB" & EIND_1 & _
   ",AQ" & BEGIN_1 & ":AQ" & EIND_1 & _
   ",AR" & BEGIN_1 & ":AR" & EIND_1)
      
   'voor meer hierboven aanpassen
   
  
   
   
End Sub
 
Niet activate.
Code:
With Sheets("grafiek").ChartObjects("Grafiek 1")
     With .Chart.Axes(xlValue, xlSecondary)
        .MinimumScale = -79
        .MaximumScale = 140
        .MajorUnit = 1
        .MinorUnit = 0.5
    End With
   .Chart.SetSourceData Source:=Union(Sheets("Berekenen").Range("A" & BEGIN_1 & ":A" & EIND_1).Resize(, 15), Sheets("berekenen").Range("BK" & BEGIN_1 & ":BK" & EIND_1))
  End With

Of:
Code:
End With
    Set c = Sheets("Berekenen").Range("A" & BEGIN_1 & ":A" & EIND_1)
   .Chart.SetSourceData Source:=Union(c.Resize(, 15), c.Offset(, 62))
  End With
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan