Dis Sub, die ich geschreiben habe, wird im Change Event des
Worksheets aufgerufen.
Da blicke ich jetzt nicht mehr ganz durch…
Wenn das ganze ein Sub mit On change ist, sollte die Zielzelle doch leer sein, wie kann da denn #NAME? drinstehen? Vielleicht schickst Du mir das ganze mal zu? Oder sagst was in der Zelle drinsteht, in der #Name? erscheint.
Dis Sub, die ich geschreiben habe, wird im Change Event des
Worksheets aufgerufen.
Da blicke ich jetzt nicht mehr ganz durch…
Wenn das ganze ein Sub mit On change ist, sollte die Zielzelle
doch leer sein, wie kann da denn #NAME? drinstehen? Vielleicht
schickst Du mir das ganze mal zu? Oder sagst was in der Zelle
drinsteht, in der #Name? erscheint.
In der Zelle, in der #NAME? steht, ist die Formel, die ich über VBA gesetzt habe.
Im Change Event habe ich die Änderung einer anderen Zelle gefiltert und reagiere auf die Änderung eienr bestimmten Zelle. Wenn sich deren Wert ändert. soll halt die Formel für eine andere Zelle gesetzt werden.
Beispiel:
Zelle A wird geändert
Der Inhalt der Zelle B wird auf die Formel gesetzt.
In Zelle B steht die Formel auch drin, aber im Worksheet wird halt nur #NAME? angezeigt. Erst, wenn ich im Zelleneditor neben der Formel den grünen Haken anklicke, wird die Formel korrekt ausgewertet.
Der Inhalt der Zelle B wird auf die Formel gesetzt.
In Zelle B steht die Formel auch drin, aber im Worksheet wird
halt nur #NAME? angezeigt. Erst, wenn ich im Zelleneditor
neben der Formel den grünen Haken anklicke, wird die Formel
korrekt ausgewertet.
Ahja, jetzt hab ich’s kapiert. Hat etwas gedauert, sorry… aber wer kommt auch schon darauf die Formel in einer Zelle zu ändern? IMHO solltest Du da lieber eine Function mit Select Case draus basteln…
Egal, setz doch einfach mal ein „Calculate“ an das Ende des Subs, das sollte wohl helfen, oder nicht?
Benutz mal statt „Summe“ die englische Funktion „Sum“. Dann klappt’s.
Offensichtlich muss Excel die deutsche Summe erstmal intern zur „Sum“ umarbeiten.
Benutz mal statt „Summe“ die englische Funktion „Sum“. Dann
klappt’s.
Offensichtlich muss Excel die deutsche Summe erstmal intern
zur „Sum“ umarbeiten.
Hallo Dirk,
vermutlich liegt das Problem in der gemischten Verwendung englischer (in VBA) und deutscher Bezeichnungen.
Eine Lösung, „SUM“ statt „SUMME“ zu verwenden, kam schon hier im Forum.
Eine andere Lösung ist, mit „FormulaLocal“ statt „Formula“ zu arbeiten. Dann verwendet Excel-VBA die lokalen (deutschen) Excel-Bezeichnungen. Diese Lösung erspart uns das Nachschlagen der englischen Funktionsnamen.
das mit der Englisch-Deutsch-Mischung ist mir ja eh nicht so geheuer
Das mit der SUM gefällt mir ganz gut. Aber der Vollständigkeit halber: Das mit FormulaLocal geht auch.
/dirk
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]