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

...tut nicht: activecell.formula = ".."

...tut nicht: activecell.formula = ".."
Axel
Guten Morgen Künstler!
Bin etwas am verzweifeln: ich hole mir in einem Diagramm aus einer Trendlinie die Gleichung des Polynoms und möchte diese Gleichung per Makro so umschreiben, dass sie direkt im Sheet verwendbar ist.
BEISPIEL:
3,27077E-20x6 - 4,15043E-16x5 + 2,10623E-12x4 - 5,33574E-09x3 + 6,41427E-06x2 - 6,54192E-04x + 2,91027E+01
wird per Makro zu
3,27077*10^-20*P7^6 - 4,15043*10^-16*P7^5 + 2,10623*10^-12*P7^4 - 5,33574*10^-9*P7^3 + 6,41427*10^-6*P7^2 - 6,54192*10^-4*P7 + 2,91027*10^1
Funktioniert prima, die umgeschriebene Formel steht in der richtigen Zelle. Setzte ich manuell ein "="-zeichen davor, arbeitet sie.
PROBLEM: Versuche ich die (ohne das manuel vorgesetzte "="-Zeichen) Formel per Makro hineinzusetzen (also inkl "="), die Hilfe bietet diesen Code dafür an: "Worksheets("Sheet1").Range("A1").Formula = "=$A$4+$A$10", dann gibt er den Error "Application defined or object defined error" aus.
ich hoffe, ihr habt gute vorschläge.
beste grüße,
axel

Sub Macro1()
ActiveCell.Replace What:="E", Replacement:="*10^", LookAt:=xlPart, SearchOrder:=xlByRows,   _
MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
ActiveCell.Replace What:="x ", Replacement:="x1", LookAt:=xlPart, SearchOrder:=xlByRows,   _
MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
x = InputBox("Zelle für x-Werte")
x = "*" & x & "^"
ActiveCell.Replace What:="x", Replacement:=x, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:= _
_
False, SearchFormat:=False, ReplaceFormat:=False
ActiveCell.Replace What:=" ", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase: _
_
=False, SearchFormat:=False, ReplaceFormat:=False
frml = "=" & ActiveCell
'beispiel-gleichung, die er nicht schluckt, die aber unter "frml" eingelesen ist, bevor er  _
unter der letzten codezeile in error geht:
' "=3,27077*10^-20*P7^6 - 4,15043*10^-16*P7^5 + 2,10623*10^-12*P7^4 - 5,33574*10^-9*P7^3 + 6,   _
_
41427*10^-6*P7^2 - 6,54192*10^-4*P7 + 2,91027*10^1"
ActiveCell.Formula = frml
End Sub

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

Betreff
Benutzer
Anzeige
AW: ...tut nicht: activecell.formula = ".."
11.09.2009 11:10:53
fcs
Hallo Axel,
verwende
  ActiveCell.FormulaLocal = frml
statt
ActiveCell.Formula = frml

zum einfügen der Formel.
Mit "ActiveCell.Formula" werden Punkt und Komma ggf. anders als Dezimal/Tausenderstelle interpretiert und Excel-VBA erwartet die englischsprachigen Bezeichnungen der Funktionen.
Der Unterschied im Hilfetext ist nicht groß
Formula (Eigenschaft)
Formula-Eigenschaft, wie sie auf das Range-Objekt angewendet wird.
Gibt die Formel des Objekts im A1-Bezugssystem entsprechend der Ländereinstellung für die Makrosprache zurück oder legt sie fest.Variant Schreib-Lese-Zugriff.
FormulaLocal-Eigenschaft
Gibt die Formel für das Objekt unter Verwendung von A1-Bezügen in der Sprache des Benutzers zurück oder legt einen Wert für sie fest. Variant-Wert mit Lese-/Schreibzugriff für Range-Objekte, String-Wert mit Lese-/Schreibzugriff für Series-Objekte.

Aber Ländereinstellung Makrosprache ist normalerweis EnglischUS, Sprache Benutzer ist bei uns in Good Old Germany meist Deutsch mit Punkt als Tausender-Trennung und Komma als Dezimalstelle. Bei den Amerikanischen Freundne ist es umgekehrt.
Und das macht hier die Probleme.
Gruß
Franz
Anzeige
ist gelöst, danke
11.09.2009 12:49:33
Axel
Franz,
danke Dir. Das war es in der Tat. Ich habe schon Stück für Stück die Formel gestrippt, bis ich den Fehler beim Komma gefunden habe. Danach hab ich mit replace von Komma durch Punkt gearbeitet. Das hat zwar funktioniert, Deine Lösung ist aber viel eleganter und auch auf anderen Rechnern kompatibel...
Gruß,
Axel

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige