Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
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

Teilsumme als VBA

Teilsumme als VBA
19.05.2016 21:41:54
Sabine
Hallo Zusammen,
eigentlich bin ich bei der Lösungssuche immer recht hartnäckig aber jetzt weiß ich einfach nicht mehr weiter. Aber vielleicht geht das aber auch nicht per VBA umzusetzen.
Ich habe zwei Excel Dateien :
in der Datei A auf dem Tabellenblatt 2016 befinden sich meine Daten die ich nach bestimmten Ländergruppen filtere und ein Teilergebnis (Summe) aus Spalte J ermittle.
mein Ist - Zustand : das Teilergebnis wird mir in Datei B (Zelle G1) mit Hilfe der Excel Formel
= TEILERGEBNIS(9;'[TabelleA]2016'! J2:J10000) angezeigt.
Dann lese ich die Zelle G1 per Makro aus um dieses Ergebnis in D2 der Datei B zu schreiben. Der Bereich A:E ist als Tabelle formatiert und der Eintrag soll von Zeile zu Zeile "vererbt" werden. Mein Makro sieht wie folgt aus:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngInput As Range
Set rngInput = Columns(2)
If Application.Intersect(Target, rngInput) Is Nothing Then Exit Sub
R = Target.Row
Cells(R, 4) = Cells(1, 7)
End Sub

Nun hätte ich gern den Umweg über Cells(1,7) gespart und direkt in der Makrozeile
Cells(R,4) = Application.WorksheetFunction.subtotal(9, ?) das Teilergebnis in die Tabelle in Datei B eingefügt.
Ich habe versucht nach dem Muster Workbooks("TabelleA.xlsm").Sheets("2016").Range("J2:J10000") die Range zu setzen aber das Makro aufgrund einer Fehlermeldung abgebrochen.
Kann mir hier jemand helfen, wo mein (Denk-)Fehler liegt?
Danke.
Grüße
Sabine

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Teilsumme als VBA
19.05.2016 23:06:44
fcs
Hallo Sabine,
in de Form
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngInput As Range, R
Set rngInput = Columns(2)
If Application.Intersect(Target, rngInput) Is Nothing Then Exit Sub
R = Target.Row
Cells(R, 4) = Application.WorksheetFunction.Subtotal(9, _
Workbooks("TabelleA.xlsm").Sheets("2016").Range("J2:J10000"))
End Sub

funktioniert das Makro.
Die Datei "TabelleA.xlsm" muss aber geöffnet sein, wenn das Makro ausgeführt wird.
Gruß
Franz

AW: Teilsumme als VBA
19.05.2016 23:26:56
Sabine
Hallo Franz,
vielen Dank für die noch so späte Antwort. Genauso hatte ich es bereits in meinen Code eingefügt ohne das sich etwas tat. Beim Schließen beider Dateien musste ich jedoch feststellen, dass sie in separaten Anwendungen geöffnet waren. Vielleicht lag es daran. Ich werde es morgen nochmal testen und Rückmeldung geben. Dankeschön!!!
Grüße
Sabine
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige