Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
852to856
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
852to856
852to856
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Funktionswerte aktualisieren - #NAME?

Funktionswerte aktualisieren - #NAME?
07.03.2007 15:24:36
Koechy
Hallo zusammen,
ich habe eine Minifunktion zum Auslesen des Worksheetnamens kopiert:

Public function Worksheetnummer()
Worksheetnummer = ActiveSheet.Index
End Function

Und dabei 2 Probleme:
1. Aktualisierung: aus irgendeinem Grund waren die Werte der Zelle A1=Worksheetnumber() in den 9 ersten Blättern nicht mehr aktuell. Nachdem ich in jedem Sheet "Enter" gedrückt habe, war der richtige Wert wieder da. Das war aber mühsam. Also wollte ich ein automatisches Refresh einfügen, z.B. durch
Application.Volatile
(hab ich im Forum gefunden)
Es passiert aber nichts. Kann mir hier jemand weiterhelfen?
2. Kopieren: Ich muss die Funktion noch in 41 weitere Blätter kopieren. 4 weitere habe ich schon, aber in der Zelle A1 erscheint in den neuen Sheets ein #NAME?-Fehler. Wie bekomme ich den weg?
Die Funktion steht in "Thisworkbook".
Grüße und danke für Hinweise.
Maren

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Funktionswerte aktualisieren - #NAME?
07.03.2007 16:15:00
Sven
Hi,
pack den Code in ein Standardmodul
Public
Function Worksheetnummer()
Application.Volatile
Worksheetnummer = ActiveSheet.Index
End Function

mfg Sven
AW: Funktionswerte aktualisieren - #NAME?
07.03.2007 16:49:51
Koechy
Hallo Sven,
erstmal vielen Dank. Umkopieren in "Module" hilft beim #NAME?-Fehler.
Warum ist das so? Die Logik im VBA Editor ist mir noch unklar (bin allerdings auch kein Programmierer).
Die Aktualisierung ist allerdings noch sehr mühsam. Ich kann zwar nun F9 benutzen, aber muss das in jedem der 50 Sheets tun. Gibt es ein "F9", was alle Sheets gleichzeitig aktualisiert?
Viele Grüße,
Maren
Anzeige
AW: Funktionswerte aktualisieren - #NAME?
07.03.2007 21:40:01
Sigi
Hi Maren,
die Funktion arbeitet korrekt! Du berechnest den Index des aktiven(!) Sheets. Da ja immer nur EIN Sheet aktiv sein kann, wird natürlich in allen Sheets der Index dieses EINEN AKTIVEN Sheets geschrieben! Und beim Wechseln von einem Sheet zu einem anderen wird halt NICHT NEU gerechnet! Deshalb musst du mit F9 die Neuberechnung erzwingen!
Aber die Neuberechnung (F9) kannst du ja per Makro erzwingen: Folgenden Code in jedes Klassenmodul deiner Sheets:
Private Sub Worksheet_Activate()
Calculate
End Sub
Gruß
Sigi
AW: Funktionswerte aktualisieren - #NAME?
08.03.2007 09:57:49
Koechy
Danke :-) Jetzt habe ich schon 2 Mal VBA verwendet :-)
Eigentlich wollte ich ja ohne auskommen. Das Lästige ist: die 52 Sheets enthalten Daten, die in 6 Auswertungssheets ausgewertet werden. Im Grunde interessiert mich nur die Auswertung. Trotzdem, muss ich aber jedes Sheet erst einmal anklickern zum Aktualisieren.
Da das Sheet inzwischen furchtbar langsam geworden ist (es steckt eine 3D Tabelle mit ca. 100x40x52 Einträgen, die aus diversen Workbooks und Tabellen zusammengesucht werden dahinter), werde ich jetzt doch anfangen zu überlegen, wie ich es optimieren kann.
Gruß, Maren
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige