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

Funktion

Funktion
15.03.2020 12:12:46
Noah
Guten Tag
Ich muss für die Schule einen kleinen VBA makro/Code schreiben. Ich bin wirklich ein neuling auf VBA und hab mich hier im Forum und diversen YouTube Videos einmal in die Grundlagen reingelesen. Ich weiss das mein vorhaben mein können wahrscheindlich übertrifft aber ich probiere das mal. *g*
Ziel ist es ein Arbeitsblatt zu schreiben indem eine einfache Funktion (z.b. 5x^2+4) als Diagramm dargestellt wird und eventuell noch das Differential und Integral.
Jetzt will ich, dass man das Programm starten kann mitels dem Knopf. Eine Wertetabelle erstellt wird mit den von bis zahlen (x1,x2) die über ein Eingabefenster eingegeben werden (diese sind von A6-A56). Danach soll die Funktion in ein Eingabefenster eingegebn werden. Wie oben z.b 5x^2+4 jetzt solte der jeweilige x wert eingesetzt werden. Entweder automatisch mit VBA oder ich könnte die Formel in eine Zelle schreiben und das X mit der jeweiligen Zelle (A6-A56) ersetzen. Doch ich habe keine Formel gefunden wie ich nur das x ersetzten kann. Bzw. wie ich mittels VBA direkt die eingegeben Funktion mittels Formel und eingesetztem x in die Zelle schreiben kann.
https://www.herber.de/bbs/user/135870.xlsm
Hänkt mich nicht für die eventuelle fehlerhafte programmierung etc. :)
Sub Funktion()
Dim x1 As String
Dim x2 As String
Dim fx As String
x1 = InputBox("Gib Sie hier X1 ein:", "Ich bin das Eingabefenster")
If x1 = "" Then
MsgBox "Keine Eingabe !" & vbCr & vbCr & "Makro-Abbruch !", vbCritical, _
"Dezenter Hinweis für " & Application.UserName & ":"
Exit Sub
Else
Range("a6").Value = x1
End If
x2 = InputBox("Gib Sie hier X2 ein:", "Ich bin das Eingabefenster")
If x2 = "" Then
MsgBox "Keine Eingabe !" & vbCr & vbCr & "Makro-Abbruch !", vbCritical, _
"Dezenter Hinweis für " & Application.UserName & ":"
Exit Sub
Else
Range("a56").Value = x2
End If
fx = InputBox("Gib Sie hier fx ein:", "Ich bin das Eingabefenster")
If fx = "" Then
MsgBox "Keine Eingabe !" & vbCr & vbCr & "Makro-Abbruch !", vbCritical, _
"Dezenter Hinweis für " & Application.UserName & ":"
Exit Sub
Else
Range("b6").Value = fx
End If
End Sub

Grüsse

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Funktion
15.03.2020 13:56:07
onur
"Doch ich habe keine Formel gefunden wie ich nur das x ersetzten kann" - Ist auch nicht so einfach, weil es mit dem Ersetzen des "x" nicht getan ist, das Makro müsste ja auch die weggelassenen Multiplikationszeichen wie z.B. bei 5x erkennen und einfügen.
Deswegen solltest du auch erst mal nur die Funktion in Excel-Schreibweise bei x1 manuell reinschreiben und runterkopieren.
Guckst du hier:
https://www.herber.de/bbs/user/135873.xlsm
AW: Funktion
15.03.2020 14:52:25
Noah
Vielen Dank Onur
Das mit den Vorzeichen ist mir entgangen.
Nehmen wir an in das Eingabefenster wird die Funktion richtig eingegeben( Z.b 5*x^2+5) wäre es möglich von der Eingabe im Eingabefenster ohne manuelle Eingabe die Wertetabelle auszufüllen?
Mein Ziel wäre ja x1,x2 und die Funktion einzugeben und es spuckt einem am schluss dan ein Diagramm raus.
Anzeige
AW: Funktion
15.03.2020 15:29:22
Daniel
Hi
statt
Range("B6").value = "fx"
folgendes:
fx = Replace(fx, "x", "A6")
Range("B6:B56").Formula = "=" & fx
Gruß Daniel

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige