Anzeige
Archiv - Navigation
204to208
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
204to208
204to208
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Lineares Gleichungssystem Lösen

Lineares Gleichungssystem Lösen
18.01.2003 15:57:26
Thorsten
Hi,

ich würde gerne ein lineares Gleichungssystem mittels Funktion/ VBA Makro lösen

Bsp. Gleichungssystem mit 2 Gleichungen und 2 Variabeln
y= 5x+7
y= 6x+8

Bestimmt werden sollen x und y, mathematisch ganz einfach zu lösen durch Gleichsetzen der Gleichungen, aber wie kann man das im Excel/ VBA Makro umsetzen? Gibt es dafür eine Funktion?

Die Ergebnisse für x und y sollten nach Berechnung in 2 verschieden Zellen stehen, z.B. in D5 steht x und in D6 y

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Lineares Gleichungssystem Lösen
18.01.2003 18:57:21
M@x
Hallo Thorsten
hast du cshon bei excelformeln.de nachgecshaut?
vor einigen Monaten war mal was, vielleicht ist es hier oder bei Spotlight im Archiv zu finden.

Gruss

M@x

Re: Lineares Gleichungssystem Lösen
18.01.2003 19:28:15
Thorsten
Hi Max,
habe beiExcelformeln.de wohl einen Ansatz gefunden, allerdings handelt es sich nicht um eine Array Formel....versuche grade, dass in mein Makro irgendwie einzubauen, wenn das vom Prinzip überhaupt geht....bis jetzt noch kein Erfolg
Danke aber für den Tip

Re: Lineares Gleichungssystem Lösen
18.01.2003 20:34:40
wolf.w.radzinski
du mußt ganz einfach alle deine Gleichungen nur etwas umstellen (in Matrixschreibweise z.B.
x y Lösungsvektor
5 -1 -7
6 -1 -8

jetzt versuchst du die Matix

5 -1
6 -1

in die Einheitsmatix zu bringen, dann hast du alle deine gesuchten Werte des LGS

x y
1 0 -1
0 1 2

--> über

1 -1/5 -7/5 ( Zeile :5)
6 -1 -8

usw. usw. bis zum Ergebnis

x=-1 und y=2 ist eine Lösung deines LGS

Wenn du für jede Variable eine Gleichung hast, dann wird nur die Matrix etwas größer, aber die Berechnung ändert sich nicht.

Programme die ein LGS lösen machen das im Prinzip auch nicht wesentlich anders ... Matrix erzeugen und in einer Schleife Pivotelement, Pivotzeile, Pivotspalte wählen bis die Einheitsmatrix erreicht ist ... der Vektor rechts daneben ist dann dein Lösungsvektor bzw. die Lösung. Fertig.

Gruß -wr-

Anzeige
Matrixverfahren
18.01.2003 21:33:11
Thorsten
Hi,

das Matrixverfahren zur Lösung des LSG bietet sich sicher an...ist auch von der Theorie her nicht das Problem, nur wie setze ich die am Rechner um??? Auf Papier geht das ohne Schwierigkeit....nur wie definiere ich für Excel ein Matrix etc. und lasse Excel dann die weiteren Operationen durchführen?? (Bestimmung Einheitsmatrix 0 1 )...und wie kann ich dann das
1 0
Ergebnis in gewünschten Zellen darstellen lassen??

Re: Matrixverfahren
18.01.2003 21:53:34
wolf.w.radzinski
was hast du gegen eine (teilweise) Formellösung www.excelformeln.de einzuwenden? Schreibe ein AddIn ... im versteckten Arbeitsblatt des AddIn fügst du die (Formel-)Lösung aus excelformeln.de ein, dann muß DEIN Makro nur noch diese (versteckte) Matrix füllen und den Ergebnisvektor auslesen.

ich sehe keinen Weg eine reine VBA Lösung "schnell mal so nebenbei" und auch noch fehlerfrei zu schreiben

Gruß -wr-

Anzeige
Excelformel
18.01.2003 22:01:26
Thorsten
Hi,

Habe da bei exelformeln.de eine passende Formel gefunden, mit der man die LGS lösen kann...super Idee, danke...
Versuche jetzt das Addin hinzukriegen, habe bisher nicht mit Addins gearbeitet...für jeden Tip/ Kurzanleitung wäre ich natürlich dankbar

Re: Excelformel
18.01.2003 23:11:40
wolf.w.radzinski
ein AddIn ist im Prinzip auch nichts anderes, als eine normale XLS Datei (einfach als XLA abspeichern)... lege eine Datei mit einem einzigen Blatt an füge die Formeln für die LGS Lösung ins Blatt ein und schreibe in einem Modul sub's oder function's, die Daten vom AKTIVEN BLATT (= Blatt deiner späteren XLS Datei) in ThisWorkbook.Sheets(1) (=das später unsichtbare Blatt des AddIn) übernehmen und von dort auch wieder ins aktive Blatt auslesen. (ungetestet)

Gruß -wr-

Anzeige
imho so einfach!
19.01.2003 00:10:37
wolf.w.radzinski
Code für ein Modul innerhalb der XLA Datei (AddIn) ... du mußt natürlich auch die Formel-Lösung aus excelformeln.de auf Blatt(1) einfügen

du markierst die Matrix und den Vektor (zwei Selections bei gedrückter Strg Taste!) und rufst "fuellen" auf

du markierst den Zellbereich für die Lösung (den Lösungsvektor) und rufst "ergebnis" auf.

Fertig

Gruß -wr-



Re: Excelformel
19.01.2003 10:41:15
Hans W. Hofmann
Hallo zusammen,

wenn schon die Lösung eines Lin. GLS verallgemeinert werden soll, dann doch mit den bewährten Gausschen Methoden...
z.B.
www.lemitec.de/ppt

Gruß HW

Anzeige
Großes Danke!
19.01.2003 14:17:26
Thorsten
Muss hier einfach mal ein Lob loswerden. Sowohl die Hilfe zum Addin (danke für die Mühe WR!!) als auch der Link (HW) haben mich weitergebracht...
Beide Verfahren ( Gaus und Matrix) laufen einwandfrei, so dass ich noch nicht weiss, welche Methode für mein Projekt vorzuziehen ist (welche Variante zur Lösung des LGS "schöner" ist...keine Ahnung, Hauptsache es klappt endlich mal ;)

Danke für die Hilfe!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige