selbstaktualsierung von (vba-)funktionen

Bild

Betrifft: selbstaktualsierung von (vba-)funktionen
von: Björn
Geschrieben am: 11.11.2003 21:51:35

Hallo Nepumuk, hallo Gemeinde,

habe mir eine Funktion geschrieben, die mir Werte berechnet für alle nicht ausgeblendeten Zeilen.

ABER folgendes Problem habe ich dabei: Die Funktion rechnet nur sobald ich in dem Feld einmal return gedrückt habe.

Muss man alle eingebetten funktionen in excel händisch nach der aktualisierung anstossen? Gibt es eine Art Dienst, die allen Funktionen sagt, pass mal auf das aktive Blatt wurde aktualsiert, bitte berechne dich neu?

danke für eure hilfe

Bild


Betrifft: AW: selbstaktualsierung von (vba-)funktionen
von: xXx
Geschrieben am: 11.11.2003 21:55:02

Hallo,
schreib an den Anfang der Func

Application.Volatile

Gruß aus'm Pott
Udo
http://www.excelerator.de

P.S.Das Forum lebt auch von den Rückmeldungen der Frager an die Antworter.


Bild


Betrifft: AW: selbstaktualsierung von (vba-)funktionen
von: Björn
Geschrieben am: 11.11.2003 22:01:03

Hi xXx,

leider zählt wohl das einfache ausblenden von Zeilen nicht zu Berechnungen, die Application.volatile einschließt.

haste noch ne ahnung?

danke schon mal im vorraus.


Bild


Betrifft: AW: selbstaktualsierung von (vba-)funktionen
von: xXx
Geschrieben am: 11.11.2003 22:08:20

Hallo,
was willst du denn erreichen?

Gruß aus'm Pott
Udo
http://www.excelerator.de

P.S.Das Forum lebt auch von den Rückmeldungen der Frager an die Antworter.


Bild


Betrifft: AW: selbstaktualsierung von (vba-)funktionen
von: Björn
Geschrieben am: 11.11.2003 22:20:30

Hi,

ich möchte quasi die Funktion "Teilergebnis" immitieren.

er soll mir später gewisse zeilen ausblenden und dann die gesamtsumme neuberechnen.
er macht es jetzt aber, nur im moment meint er er könne die Eigenschaft "Hidden" nicht setzen (ich nutze excel 97)... haste ne ahnung?

Code .......

Public

Sub ausblender()
    Dim lngZeile As Long
    For lngZeile = 12 To 16
        If ActiveSheet.Rows(lngZeile).Hidden = False Then
            Rows(lngZeile).Hidden = True
        End If
    Next
    
    ActiveSheet.Calculate
End Sub


Public

Sub einblender()
    Dim lngZeile As Long
    For lngZeile = 10 To 100
        If ActiveSheet.Rows(lngZeile).Hidden = True Then
            Rows(lngZeile).Hidden = False
        End If
    Next
End Sub


Public

Function summ(calcRange As Range) As Long
    
    Application.Volatile
    
    Dim z, tmp, result As Long
    result = 0
    
    For Each z In calcRange
    If z.EntireRow.Hidden = False Then
        tmp = result
        result = tmp + z.Value
    End If
Next z
    summ = result
        
End Function


...... ende code


Bild


Betrifft: AW: selbstaktualsierung von (vba-)funktionen
von: K.Rola
Geschrieben am: 11.11.2003 23:10:33

Hallo,

du kannst doch die Berechnung auch in einer Sub machen, die du
mit dem Ein/Ausblenmakro anstößt.

Gruß K.Rola


Bild

Beiträge aus den Excel-Beispielen zum Thema " Textbox Format"