Anzeige
Archiv - Navigation
1112to1116
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
Mathematische Formel in VBA
Daniel
Hallo mal wieder ^^
kann man so eine Formel in Form von
=$C$149+($C$148-$C$149)*EXP((-U379*60*$C$151*$C$154*$C$159)/($C$152*$C$153*$C$158))
per Makro schreiben?!
Es geht darum das eine Berechnung per Knopfdruck auf ein Commandbutton, welches mit dem entsprechenden Makro gefüttert ist, durchgeführt werden soll. Dabei soll die Formel zum Beispiel in V379 rechnen und das Ergebnis eintragen und dann weitermachen in V380 usw und jeweils in jeder neuen V-Zelle das U entsprechend hochsetzen.
Bsp:
V 379 = Formel von oben mit U379
V 380 = Formel von oben mit U380
.
.
.
und dies soll nur so lange geschehen wie ein wert in der U-spalte steht.
Kann man sowas per VBA machen?! Bin überfordert -.-
Danke im Voraus,
Daniel
AW: Mathematische Formel in VBA
27.10.2009 16:29:54
JogyB
Hi.
Wieso per VBA? Als Excel-Profi weißt Du doch wie man die Formel nach unten ausfüllen läßt bzw. wie Du mit einer WENN-Funktion verhinderst, dass bei leeren Zellen in Spalte U eine Berechnung in V ausgeführt wird.
Ansonsten:
Private Sub CommandButton1_Click()
' Formel in V379 bis Ende löschen
Range(Cells(379, 22), Cells(Rows.Count, 22).End(xlUp)).ClearContents
' Formel eintragen
Range(Cells(379, 21), Cells(Rows.Count, 21).End(xlUp)).Offset(0, 1).FormulaR1C1 = _
"=R149C3+(R148C3-R149C3)*EXP((-RC[-1]" & _
"*60*R151C3*R154C3*R159C3)/(R152C3*R153C3*R158C3))"
End Sub
Gruss, Jogy
Anzeige
AW: Mathematische Formel in VBA
27.10.2009 16:39:45
Daniel
Ja das weiß ich wie mans macht, aber mit nem Makro ist das alles viel schöner ;=)
Danke für die Hilfe!
Kannst du mir vll auch noch sagen wie Ich in der Spalte W bei passenden Eintrag der spalte V, das Ergebnis von V-273,15 nehmen kann (wie oben)
Bsp:
W379 = V379 - 273,15
Und zwar wieder in dem Bereih der gefüllt ist.
Schönen Abend
AW: Mathematische Formel in VBA
27.10.2009 16:54:37
JogyB
Hi.
Aber sicher doch (macht beides):
Private Sub CommandButton1_Click()
' Formel in V379 bzw. W379 bis Ende löschen
Range(Cells(379, 22), Cells(Rows.Count, 22).End(xlUp)).ClearContents
Range(Cells(379, 23), Cells(Rows.Count, 23).End(xlUp)).ClearContents
' Formel eintragen
With Range(Cells(379, 21), Cells(Rows.Count, 21).End(xlUp))
.Offset(0, 1).FormulaR1C1 = _
"=R149C3+(R148C3-R149C3)*EXP((-RC[-1]" & _
"*60*R151C3*R154C3*R159C3)/(R152C3*R153C3*R158C3))"
.Offset(0, 2).FormulaR1C1 = "=RC[-1]-273.15"
End With
End Sub

Gruss, Jogy
Anzeige
AW: Mathematische Formel in VBA
27.10.2009 17:13:18
Daniel
Vielen Dank,
wenn du mir jetzt auch noch sagen kannst wie der VBA Code aussieht der aus den Daten aus der U-Spalte (minuten) und der W-Spalte (Temperatur in °C) ein x-y diagramm mit interpolierten Linien erzeugt in dem Bereich der vorhanden ist in der spalte, dann bist der neue VBA Gott *g*
X-Achse= Zeit in min (U-Spalte)
Y-Achse = Temp in °C (W-Spalte)
Gruß
Daniel
AW: Mathematische Formel in VBA
28.10.2009 09:31:47
JogyB
Hi.
Noch kurz nachgehakt: Wo soll das Diagramm hin? Ins Tabellenblatt oder als eigenes Sheet?
Gruss, Jogy
AW: Mathematische Formel in VBA
28.10.2009 09:33:03
Daniel
Als eigenes Sheet wäre gut ^^
Was mir noch einfällt, kann man per Makro auch einstellen das er die Skalierung der x-y achse dann automatisch anpasst ?
Anzeige
AW: Mathematische Formel in VBA
28.10.2009 09:46:16
JogyB
Hi.
Nachfrage: Wo soll das Diagramm hin? Ins Tabelleblatt oder in ein eigenes Sheet?
Gruss, Jogy
AW: Mathematische Formel in VBA
28.10.2009 09:50:16
Daniel
Aber das hab ich doch schon geschrieben ^^
AW: Mathematische Formel in VBA
28.10.2009 10:02:55
Daniel
Noch da Jogy?
AW: Mathematische Formel in VBA
28.10.2009 10:12:56
JogyB
Hi.
Ja, bin natürlich noch da ;)
Hatte das doppelt geschickt, da ich dachte, ich hätte vergessen das abzuschicken.
Probier mal den Code:
Private Sub CommandButton1_Click()
Dim myChart As Chart
Const diagName = "Diag Temperaturdaten" ' den hier anpassen
' Formel in V379 bzw. W379 bis Ende löschen
Range(Cells(379, 22), Cells(Rows.Count, 22).End(xlUp)).ClearContents
Range(Cells(379, 23), Cells(Rows.Count, 23).End(xlUp)).ClearContents
' Formel eintragen
With Range(Cells(379, 21), Cells(Rows.Count, 21).End(xlUp))
.Offset(0, 1).FormulaR1C1 = _
"=R149C3+(R148C3-R149C3)*EXP((-RC[-1]" & _
"*60*R151C3*R154C3*R159C3)/(R152C3*R153C3*R158C3))"
.Offset(0, 2).FormulaR1C1 = "=RC[-1]-273.15"
' Testen, ob das Diagramm schon vorhanden ist
On Error Resume Next
Set myChart = Sheets(diagName)
' Wenn nicht, dann erzeugen
If Err.Number  0 Then
Set myChart = Charts.Add
With myChart
.Name = diagName
.ChartType = xlXYScatterSmooth
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Zeit / min"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "T / °C"
End With
End If
myChart.SetSourceData Source:=Union(.Offset(0, 0), .Offset(0, 2)), PlotBy:=xlColumn
myChart.SeriesCollection(1).Name = "=""Daten""" ' Mußt Du hier halt so benennen, wie Du  _
es willst
End With
End Sub
Gruss, Jogy
Anzeige
AW: Mathematische Formel in VBA
28.10.2009 10:18:55
Daniel
Der funktioniert, nur erstellt er mir für jede Minute eine Gerade, dabei will ich eine kurve mit dem zeitlichen verlauf der Temperatur, sprich 2 datenreihen eine die x-achse mit zeit und die y-achse mit der temperatur.
Hoff verstehst was ich mein.
Gruß
AW: Mathematische Formel in VBA
28.10.2009 10:24:14
Daniel
Ne geht doch :=)
Muss ich nur noch rausfinden wer er die skalierung anpasst.
Danke!!
Auch wenn hier 13x dasselbe falsch steht,...
30.10.2009 11:15:41
Luc:-?
...wird aus einer typischen xlFormel noch lange keine „mathematische" Formel!
Gruß Luc :-?
AW: Auch wenn hier 13x dasselbe falsch steht,...
30.10.2009 11:17:45
Daniel
Typisch oder net, ich kenn mich net aus mit formeln in vba, problem is aber gelöst.
Und für mich ist das eine mathematische formel ^^
Gruß
Anzeige

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige