Active Worksheet oder falche Call Anweisung
12.02.2007 13:17:10
Wolfgang
Ich habe einen Commandbutton auf dem Tabellenblatt "DRG Info" eingerichtet.
Dieser soll zunächst eine Schleife (DatenAufbereiten) in Gang setzen, die Werte berechnet. Diese Werte werden später in einem Diagramm dargestellt. Beide Prozeduren sind im Modul 1 gespeichert.
Bei
Sub CommandButton_Click()
Call Modul1.DatenAufbereiten
Call Modul1.DiagrammErstellen
End Sub
...wird ein Diagramm erstellt, aber ohne Werte :-)
Nun habe ich festgestellt, dass
Sub DatenAufbereiten(), nur dann tätig wird, wenn die Prozedur von dem Tabellenblatt "Berechnung" aufgerufen wird. (Hat ziemlich lange gedauert, fast bei durchgedreht :-))
Muss ich etwas am Aufruf der Prozeduren ändern (?) oder muss ich in der Prozedur DatenAufbereiten das Worksheet "Berechnung" aktivieren? (Habe das jetzt auch schon probiert, aber bekomme immer wieder Bugs)
Sub DatenAufbereiten()
Dim Tag As Integer, i As Double, wksA As Worksheet, wksB As Worksheet
Set wksA = ActiveWorkbook.Worksheets("Berechnung")
Set wksB = ActiveWorkbook.Worksheets("Schleife")
i = 0
Tag = 0
Do Until i = Range("W9")
i = i + 1
wksB.Cells(2 + i, "A") = i
Do Until Tag = Range("W9")
Tag = Tag + 1
wksA.Range("I12").Value = Tag
wksB.Cells(2 + Tag, "B").Value = wksA.Range("T12").Value
Loop
Loop
End Sub
Sub DiagrammErstellen()
Dim Dia As ChartObject
Dim i As Currency
Set Dia = Sheets("DRG Info").ChartObjects.Add(2, 470, 605, 400)
Dia.Name = "DRG"
i = Sheets("Schleife").Range("B3").End(xlDown).Row
Sheets("Schleife").Range("A3:B" & i).Copy
Sheets("DRG Info").ChartObjects("DRG").Activate
ActiveChart.SeriesCollection.Paste _
Rowcol:=xlColumns, SeriesLabels:=False, _
CategoryLabels:=True, Replace:=True, NewSeries:=True
Vielen Dank für Eure Hilfe!
Wolfgang