Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Neuberechnung einer UDF

Neuberechnung einer UDF
25.03.2018 13:30:55
Frank
Hallo zusammen,
ich habe bereits gegoogelt "VBA Neuberechnung erzwingen". Ich möchte die Summe von den sichtbaren Spalten berechnen. Die in Excel zur Verfügung gestellte Funktion TEILERGEBNIS funktioniert leider nur für Zeilen. Darüber hinaus gibt es den Befehl Application.Volatile. Nun habe ich einen kleinen Code von Hajo gefunden und den Code für Spalten umgeschrieben. Wenn ich eine Zeile ausblende, dann wird die UDF SummeVisibleZeile angestoßen. Blende ich eine Spalte aus passiert leider nichts. Weiß jemand wie man dieses Problem beheben kann?
Function SummeVisibleZeile(Bereich As Range)
'Summe bei eingeblendeten Zeilen
Dim Zelle
Application.Volatile
For Each Zelle In Bereich
If Zelle.RowHeight > 0 Then
SummeVisibleZeile = SummeVisibleZeile + Zelle
End If
Next
End Function
Function SummeVisibleSpalte(Bereich As Range)
'Summe bei eingeblendeten Spalten
Dim Zelle
Application.Volatile
For Each Zelle In Bereich
If Zelle.ColumnWidth > 0 Then
SummeVisibleSpalte = SummeVisibleSpalte + Zelle
End If
Next
CalculateFull
End Function

Vielen Dank und viele Grüße
Frank

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Copyright
25.03.2018 13:38:41
Hajo_Zi
Hallo Frank,
ich für meine Teil alte mich an diese Seite
http://www.hajo-excel.de/copyright.htm

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Copyright
25.03.2018 13:58:31
Frank
Hallo Hajo,
das wusste ich leider nicht und möchte mich dafür bei dir entschuldigen! Das kommt nicht wieder vor. Ich habe deinen Code aus diesem Link:
http://www.ms-office-forum.net/forum/showthread.php?t=150635
Option Explicit
' Summe bei eingeblendeten Zeilen
Function SummeVisible(Bereich As Range)
'* H. Ziplies                                     *
'* 24.01.05                                       *
'* erstellt von Hajo.Ziplies@web.de               *
'* http://home.media-n.de/ziplies/
Dim Zelle
Application.Volatile
For Each Zelle In Bereich
If Zelle.RowHeight > 0 Then
SummeVisible = SummeVisible + Zelle
End If
Next
End Function

Anzeige
hach jaaa...seufzzz...
25.03.2018 14:09:43
Oberschlumpf
Hi Hajo_Zi,
ich weiß nicht, wieviele, auch sehr komplexe, Codebeispiele ich schon erstellt + hier veröffentlicht habe.
Aber ich weiß, dass ich in keinem meiner Bsp-Codes einen Hinweis auf mich, den Ersteller, gegeben habe!
Und glaub mir, die hier Fragenden freuen sich einfach über die hier gebotene Hilfe, aber niemand, da bin ich sicher, "verschwendet" nach Lösung ihrer VBA-Probleme noch einen Gedanken ans uns Helfende.
Aber ok, jeder muss selbst wissen, wie wichtig er sich nimmt (und muss dann auch mal mit Texten wie diesem hier rechnen).
Ciao
Thorsten
AW: hach jaaa...seufzzz...
25.03.2018 14:59:13
Günther
Moin Thorsten,
ich muss gestehen, dass ich zu jenen Foren-Nutzern gehöre, die HaZi's Dauer-Spammerei mit den immer wieder sinnentleerten Textbausteinen einfach nur widerlich finden und verabscheuen.
A B E R : In diesem Fall steht ja nicht zur Diskussion, dass er sein (C)-Vermerk in den Code gesetzt hat. Das finde ich übrigens ganz OK. Der Anlass war, dass der Header einfach nicht mit gepostet wurde, obwohl er zur Gesamtheit des "Geistigen Werks" dazu gehört. Und da muss ich HZ Recht geben, dass das nicht OK ist. Denn aus meiner Sicht ist es durchaus etwas anderes, ob ich gezielt in einen Einzelfall Code für eine Lösung in einem Forum erstelle oder eine Bibliothek veröffentliche, wo ich dieses oder jenes der Allgemeinheit zur Verfügung stelle. - Und dass du in vielen Fällen auch bei den beschriebenen Einzel-Lösungen hier im Netz das Recht auf dein Geistiges Eigentum hast, steht außer Frage (zumindest im Rahmen des Copyright-Rechts); Dass du das nicht durch einen Header dokumentierst spricht für dich, da es in Foren (aus meiner Sicht zu Recht) ziemlich "schräg" ankommen würde.
Ach ja, dass der TE sich dahingehend korrigiert hat, habe ich bemerkt und finde ich auch gut so. - Und deinen letzten Satz kann ich nur unterstützen, sofern das globale Erscheinungsbild gemeint ist ... 8-)
Gruß
Günther
Anzeige
AW: hach jaaa...seufzzz...
25.03.2018 16:26:35
Frank
Wie gesagt es tut mir leid! Ich wusste es nicht. Aber Unwissenheit schützt ja bekanntlich nicht vor Strafe. Ich bin davon ausgegangen wenn ich schreibe, dass ich einen Quellcode von Hajo gefunden habe, ich damit ausreichend auf sein geistiges Werk verwiesen habe. Ich werde zukünftig nur noch den originalen gesamten Quelltext hochladen.
Ich wäre euch dennoch sehr verbunden, wenn Ihr mir eventuell weiterhelfen könntet.
Vielen Dank und viele Grüße
Frank
AW: Neuberechnung einer UDF
25.03.2018 17:11:10
Daniel
Hi
ich vermute mal gar nicht.
das Ausblenden von Spalten löst in Excel keine Neueberechnung der Formeln aus, ebenso wie das Ändern einer einzelnen Formatierung keine Neuberechnung der Formeln auslöst.
die Jungs von MS haben das so programmiert, wenn du das ändern wolltest müsstest du schon tiefer in die Programmierung von Excel eingreifen.
die Formeln werden erst dann neu berechnet, wenn sich irgend ein Zellwert ändert.
Gruß Daniel
Anzeige
AW: Neuberechnung einer UDF
25.03.2018 18:17:43
Frank
Hallo Daniel,
vielen Dank für deine Antwort. Dann wurde das von den Jungs von MS aber nicht konsequent abgearbeitet, denn wenn man eine Zeile ausblendet, dann ändert sich auch kein Wert und dennoch wird das Makro von Hajo "SummeVisible" ausgeführt. Es wird schon so sein wie du vermutest aber Vielleicht hat ja noch jemand eine Idee, deshalb lass ich die Frage noch offen. Ich wünsche einen schönen Abend.
Vielen Dank und viele Grüße
Frank
Das eine hat mit dem anderen nichts zu tun ...
25.03.2018 19:45:13
lupo1
... Daniel meinte: Kein Neuberechnungsanstoß bei bloßem Ausblenden, ohne separate Klimmzüge.
AW: Das eine hat mit dem anderen nichts zu tun ...
25.03.2018 19:57:20
Frank
Guten Abend lupo1,
ich habe verstanden was Daniel geschrieben hat. Ich meine nur, dass es beim Ausblenden von Zeilen ja einen Neuberechnungsanstoß erzeugt, obwohl sich kein Wert ändert... Beim Ausblenden von Spalten wird kein Berechnungsanstoß erzeugt, denn es ändert sich kein Wert. Warum funktioniert es dann aber für Zeilen?
Vielen Dank und viele Grüße,
Frank
Anzeige
AW: Das eine hat mit dem anderen nichts zu tun ...
26.03.2018 00:10:25
Daniel
Hi
das haben die Jungs von Mircosoft so programmiert.
Gruß Daniel
Das liegt an der ListenOrientierung von Xl, ...
26.03.2018 05:16:02
Xl,
…Frank,
(für Buchhaltung&Co). Wer seine Tabellen andersherum aufbaut, braucht halt einen ExtraAnstoß. Mit VBA kann man dass nicht ändern, schon gar nicht als Externer. Man kann sich höchstens weitgehend anzupassen versuchen. Im Archiv gibt's dafür auch Bspp (auch mit Erläuterungskopf ;-]), zB die UDF NoErrRange
Morrn, Luc :-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige