Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1448to1452
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

bei Veränderung keine Aktualisierung

bei Veränderung keine Aktualisierung
08.10.2015 11:30:41
Falco
Hallo,
ich habe folgenden Code:

Private Sub Worksheet_Change(ByVal Target As Range)
With ActiveSheet.ChartObjects("Chart 1").Chart
Select Case Target.Address
Case Is = [I53].Address
.Axes(xlCategory).MaximumScale = Target.Value
Case Is = [E53].Address
.Axes(xlCategory).MinimumScale = Target.Value
Case Is = [P47].Address
.Axes(xlCategory).MajorUnit = Target.Value
Case Is = [G46].Address
.Axes(xlValue).MaximumScale = Target.Value
Case Is = [G47].Address
.Axes(xlValue).MinimumScale = Target.Value
Case Is = [P46].Address
.Axes(xlValue).MajorUnit = Target.Value
End Select
End With
End Sub

Dieser bewirkt eine Skalierung meines Diagramms. Jedoch verändere ich die Werte in manchen Zellen nicht direkt sondern werden die berechnet.
als Bsp: P46 wird direkt in die Zelle eingetragen und das Diagramm ändert das Intervall. Bei I53 ist der Zellinhalt mit I53=A1+A2 berechnet. Die Zelle rechnet natürlich richtig und aktualisiert sich selbst aber diese Art von Zelländerung bewirkt keine Änderung im Diagramm. Auch nicht wenn im Anschluss eine "direkte" Zelle verändert wird.
Wie kann ich die Aktualisierung in den VBA Code mit integrieren?

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Worksheet_Calculate (owT)
08.10.2015 11:58:05
EtoPHG

AW: Worksheet_Calculate (owT)
08.10.2015 12:18:18
Falco
Wenn ich _Change durch _Calculate ersetzte dann funktioniert nichts mehr. Hatte es vorher schon ausprobiert.

...Weil Worksheet_Calculate kein Target hat, ...
08.10.2015 12:29:17
Luc:-?
…Falco;
das musst du ändern/anpassen!
Tipp: Ereignisprozeduren nicht ein-/zusammenkopieren, sondern stets anlegen (Auswahl in den beiden Kopfmenüs)!
Gruß, Luc :-?
Besser informiert mit …

AW: ...Weil Worksheet_Calculate kein Target hat, ...
08.10.2015 12:55:34
Falco
so also nicht ...?
Private Sub Worksheet_Calculate(ByVal Target As Range)
With ActiveSheet.ChartObjects("Chart 1").Chart
Select Case Target.Address
Case Is = [I53].Address
.Axes(xlCategory).MaximumScale = Target.Value
wo müsste es genau hin? Das Target ist ja angegeben O.o

Anzeige
Wenn du machen würdest, was ich dir geraten ...
08.10.2015 13:36:10
Luc:-?
…habe, Falco,
würdest du sehen, das VBA den Prozedurkopf so anlegt:
Private Sub Worksheet_Calculate()
Du musst also die zu bearbeitenden Bereiche normal deklarieren, die Prozedur selbst hat keine Parameter.
Luc :-?

AW: bei Veränderung keine Aktualisierung
08.10.2015 12:54:10
Luschi
Hallo Falco,
Du mußt nicht die Zelle 'I53' überwachen sondern die Zellen 'Ai' & 'A2', denn hier ist der Auslöser für die Änderung der Zelle 'I53' durch eine Formel. Formeln lösen aber das 'Worksheet_Change'-Ereignis aus, sondern nur manuelle eingaben und Wertänderungen mittels Vba, deshalb so:
Private Sub Worksheet_Change(ByVal Target As Range)
    With ActiveSheet.ChartObjects("Chart 1").Chart
        Select Case Target.Address(0, 0)
            Case "A1", "A2"
                .Axes(xlCategory).MaximumScale = [I53].Value
            Case "E53"
                .Axes(xlCategory).MinimumScale = Target.Value
            Case Is = "P47"
                .Axes(xlCategory).MajorUnit = Target.Value
            Case Is = "G46"
                .Axes(xlValue).MaximumScale = Target.Value
            Case Is = "G47"
                .Axes(xlValue).MinimumScale = Target.Value
            Case "P46"
                .Axes(xlValue).MajorUnit = Target.Value
        End Select
    End With
 End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0

Gruß von Luschi
aus klein-Paris

Anzeige
Du hast 1 'nicht' vergessen, Luschi! ;-) Gruß owT
08.10.2015 13:38:32
Luc:-?
:-?

AW: Du hast 1 'nicht' vergessen
08.10.2015 14:05:05
Falco
Es funktioniert :)
Danke
Wieder bisschen an VBA Verständnis dazu bekommen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige