15
Shichang Wang und Wolfgang Schmidt Berechnungen in der Chemie und Verfahrenstechnik mit Excel und VBA

Berechnungen in der Chemie und Verfahrenstechnik mit Excel ... · 2.6 Lösen von Gleichungssystemen, die Gauß-Jordan Methode 128 2.7 Numerische Integration nach Simpson 135 2.8 Numerische

  • Upload
    hacong

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Shichang Wang und Wolfgang Schmidt

Wang • Schm

idtBerechnungen in der Chem

ie und Verfahrenstechnik m

it Excel und VBA

9 783527 337163

ISBN 978-3-527-33716-3

Berechnungen in der Chemie und Verfahrenstechnik mit Excel und VBA

Excel ist in seiner Standardform das bekannteste und etablierteste Programm zur Tabellen-kalkulation mit zahlreichen Funktionen zur Datenanalyse und Präsentation. In Verbindung mit VBA (Visual Basic for Applications, eine zu den Microsoft Office-Programmen gehörende Skriptsprache) wird es zu einem noch mächtigeren System, das es dem Anwender ermög-licht, das Programm und die Anwendungen an eigene Problemstellungen anzupassen. Zur Berechnung verfahrenstechnischer Probleme ist Excel-VBA aufgrund seiner flexiblen Möglichkeiten das Programm der Wahl.

Der Buchmarkt für (angehende) Chemieingenieure und Verfahrenstechniker ist weitgehend von zwei Extrema bestimmt: theorielastige Lehrbücher und Bücher, die ausschließlich auf Beispiele fokussiert sind. Diese Lücke schließt das vorliegende Arbeitsbuch. Da es insbeson-dere für Ingenieure interessanter ist, erst die Praxis und dann die Theorie kennenzulernen, folgt der Band konsequent dieser Linie: Mit den ausführlichen Beispielen in Excel-VBA kann der Leser sofort selbst arbeiten – und erzielt einen optimalen Lerneffekt dank „learning by doing“! Von der Erstellung von Makros in Excel zum Schreiben eigener VBA-Programme, bis zum Lösen von Gleichungssystemen und vieler Beispiele aus der Praxis bauen die Inhalte Schritt für Schritt aufeinander auf.

Dieses Arbeitsbuch ist nicht nur eine wertvolle Hilfe zur Problemlösung, sondern auch Ent-scheidungshilfe und ideal zur Weiterbildung. Die notwendige Theorie findet der Leser im Anhang aber auch in diversen Herleitungen, was den Wert dieses Bandes als Arbeits- und Lehrbuch unterstreicht.

www.wiley-vch.de

Prof. Dr.-Ing. Shichang Wang studierte an der TU Clausthal und promovierte an der TU München. Seit dem 01.03.2003 lehrt er an der Hochschule Niederrhein auf dem Gebiet der Thermischen Verfahrenstechnik. Seine Lehrmodule sind u.a. Thermische Verfahrenstechnik und Computer Aided Process Engineering. Vor seiner Hochschultätigkeit war er lange Jahre in Anlagenbau-unternehmen im Bereich der Verfahrensentwicklung und Prozesssimulation tätig. Er berät die Firmen bei der Anwendungsentwicklung u.a. mit Excel und VBA.

Wolfgang Schmidt lehrt seit 2008 als Lehrbeauftragter gemeinsam mit Professor Shichang Wang an der Hoch-schule Niederrhein in Krefeld auf dem Gebiet der Rektifika-tion. Nach seinem Abschluss als Dipl.-Ing. Chemietechnik an der TU Dortmund sammelte er langjährige industrielle Erfahrungen im Bereich der Verfahrensentwicklung und Prozesssimulation. Er war 20 Jahre lang Geschäftsführer der Chemstations Deutschland GmbH in Wesel und bie- tet heute Weiterbildungskurse u.a. für Prozesssimulation, Excel und VBA an, siehe www.chemievt.de

Shichang WangWolfgang Schmidt

Berechnungen in der Chemie undVerfahrenstechnik mit Excel und VBA

Beachten Sie bitte auch weitere interessante Titelzu diesem Thema

Green, J., Bullen, S., Bovey, R.,Alexander, M.

Excel 2007 VBAProgrammer's Reference

2007

Print ISBN: 978-0-470-04643-2; also

available in electronic formats

Billo, E.

Excel for ChemistsA Comprehensive Guide, ThirdEdition (with CD-ROM)

3. Auflage

2011

Print ISBN: 978-0-470-38123-6; also

available in electronic formats

Billo, E.

Excel for Scientists andEngineersNumerical Methods

2007

Print ISBN: 978-0-471-38734-3; also

available in electronic formats

Mansfield, R.

Mastering VBA forMicrosoft Office 2013

2013

ISBN: 978-1-118-69512-8

Shichang WangWolfgang Schmidt

Berechnungen in der Chemie undVerfahrenstechnik mit Excel und VBA

AutorenProf. Dr. Shichang WangHochschule NiederrheinSWK-Energiezentrum E2

Thermische VerfahrenstechnikReinarzstraße 4947805 KrefeldGermany

Dipl.-Ing. Wolfgang SchmidtSüdstr. 3946562 VoerdeGermany

Print ISBN: 978-3-527-33716-3

ePDF ISBN: 978-3-527-68024-5

ePub ISBN: 978-3-527-68023-8

Mobi ISBN: 978-3-527-68025-2

oBook ISBN: 978-3-527-68022-1

1. Auflage 2015

◼ Alle Bücher von Wiley-VCH werden sorgfältigerarbeitet. Dennoch übernehmen Autoren,Herausgeber und Verlag in keinem Fall, einschließ-lich des vorliegenden Werkes, für die Richtigkeit vonAngaben, Hinweisen und Ratschlägen sowie füreventuelle Druckfehler irgendeine Haftung

Bibliografische Informationder Deutschen NationalbibliothekDie Deutsche Nationalbibliothek verzeichnet diesePublikation in der Deutschen Nationalbibliografie;detaillierte bibliografische Daten sind im Internet über<http://dnb.d-nb.de> abrufbar.

© 2015 Wiley-VCH Verlag & Co. KGaA, Boschstr. 12,69469 Weinheim, Germany

Alle Rechte, insbesondere die der Übersetzung in an-dere Sprachen, vorbehalten. Kein Teil dieses Buchesdarf ohne schriftliche Genehmigung des Verlages inirgendeiner Form – durch Photokopie, Mikro-verfilmung oder irgendein anderes Verfahren –

reproduziert oder in eine von Maschinen, insbesonderevon Datenverarbeitungsmaschinen, verwendbare Spra-che übertragen oder übersetzt werden. Die Wiedergabevon Warenbezeichnungen, Handelsnamen oder sons-tigen Kennzeichen in diesem Buch berechtigt nicht zuder Annahme, dass diese von jedermann frei benutztwerden dürfen. Vielmehr kann es sich auch dann umeingetragene Warenzeichen oder sonstige gesetzlichgeschützte Kennzeichen handeln, wenn sie nicht eigensals solche markiert sind.

Umschlaggestaltung Bluesea Design, Simone Benja-min, McLeese Lake, CanadaSatz Reemers Publishing Services GmbH, KrefeldDruck und Bindung Markono Print Media Pte Ltd,Singapore

Gedruckt auf säurefreiem Papier.

Für meinen Vater Zhixun Wang und meine Mutter Duolan Zheng aus dem DorfTengyuan, China – Shichang Wang

Für meine Kinder Annette und Christoph –Wolfgang Schmidt

Berechnungen in der Chemie und Verfahrenstechnikmit Excel-VBA

Es gehört zu den täglichen Aufgaben von Chemikern und Ingenieuren, Berech-nungen durchzuführen. Für einige spezielle Anwendungen stehen kommerzielleSoftwareangebote zur Verfügung, weniger jedoch für die vielen kleineren, täg-lichen Aufgabenstellungen. In diesem Buch werden Lösungen in Excel und VBAgenau dafür vorgestellt.Schwerpunkt sind numerische Methoden und deren Anwendungen in der

Chemie und Verfahrenstechnik. Dazu gehören numerische Integration undDifferenzierung, Lösung von Differentialgleichungen, Lösungen linearer undnicht-linearer Gleichungen durch Matrixberechnung. Beispiele sind u.a. Volu-menberechnungen von Behältern, Berechnung zwischenmolekularer Potentiale,Phasengleichgewichte, chemische Reaktionen, instationäre Wärmeleitung, Maß-einheiten, Zustandsgleichungen, Optimierung. Alle Berechnungen werden inExcel in Kombination mit der Programmierung VBA realisiert. In einer Schrittfür Schritt Vorgehensweise erlernt der Leser nicht nur die Möglichkeiten derNumerik, sondern auch das Programmieren kennen und schätzen. Vorkenntnissesind nicht erforderlich. Sowohl beim Studium als auch in der Praxis ist diesesBuch sehr hilfreich.

Vorwort

Berechnungen in der Chemie oder Verfahrenstechnik sind heute wichtiger dennje. Durch Berechnung und Simulation kann man Experimente im Voraus testenund später begleiten. Die Literatur ist voll von Berechnungsmethoden, derenNutzung aber ohne entsprechende Hilfsmittel meist am Aufwand scheitern. Excelin Kombination mit VBA bietet sich geradezu an, die allgemein als schwierigempfundenen numerischen Methoden kennenzulernen.Jedes Thema wird optimal in sich geschlossen behandelt, so dass sich der Leser

mit jedem beliebigen Thema beschäftigen kann, ohne ein vorheriges Themengelesen haben zu müssen.Sowohl eine vollständige Einführung als auch eine Beschreibung der Möglich-

keiten der Programmiersprache VBA würde den Rahmen dieses Buches spren-gen. Diesbezüglich wird auf die allgemeine Literatur verweisen. Es seien hier die

VII

Verlage Addison-Wesley, Hanser, Mikrosoft als auch M&T genannt, um nureinige zu nennen. Anregungen zu diesem Buch wurden insbesondere denBüchern von Ebert, Ederer: Computerberechnungen in der Chemie und Müller-Erlwein: Computeranwendungen in der chemischen Reaktionstechnik sowieeinigen Lehrbüchern entnommen.

Die Excel-VBA-Geschichte, kurz erzählt.

Excel wie seine historischen Vorgänger Lotus Symphony waren ursprünglich fürkaufmännische Anwendungen erstellt worden, die ersten Computer übrigensauch. Während Borland einen eigenen C-Compiler und eine Tabellenkalkulationim Quellcode lieferte, brachte Microsoft das erste Excel auf den Markt. Damitließen sich tabellarische Daten leicht horizontal und vertikal summieren, was zurKontrolle von Materialbilanzen z.B. einer Chemieproduktion außerordentlichhilfreich war. Für häufig wiederkehrende Vorgänge wurde eine Makrospracheeingeführt, die aber wenig intuitiv war. Bill Gates mochte Basic persönlich sehr.Deshalb befand sich stets ein Basic Interpreter auf jeder DOS-Diskette eines PCs.Im Gegensatz zum langsamen Interpreter konnte man mit den Basic Compi-

lern von Microsoft, Power Basic oder Turbo Basic Basic-Programme deutlichbeschleunigen. Im Vergleich zum damals in der Technik häufig verwendetenFORTRAN war die Programmsprache Basic erheblich einfacher.Als B. Gates Visual Basic 4 herausbrachte, begann der zweite Siegeszug von

Basic. Sehr bekannt ist die Version 6, der VB6 Compiler. Damit werden indus-triell gefertigte Programme erstellt, die denen in C++ erstellten in nichts nach-stehen.Basic als VBA (Visual Basic for Application) ersetzte die alte Makrosprache in

Excel. Die Stärke von VBA in Excel besteht heute darin, dass die Oberfläche vonExcel mit VBA kombiniert werden kann. Dabei ist besonders erwähnenswert,dass aus einer Ausführung in Excel unmittelbar ein VBA-Programm, das sog.Makro erstellt werden kann, das sog. Makroaufzeichnen. Das ist auch zumErlernen von VBA sehr hilfreich. Der Befehlsumfang von VBA ist im Vergleichzum alten Quick Basic enorm gewachsen. In Kombination mit DLL ist man fastso stark wie der VB6 Compiler. Programme in VB6 laufen allerdings ohne Excel.Zu diesem Buch gehört selbstverständlich eine Excel-Datei: „Excel-VBA-Che-

mie.xlsm“ in der Version Office 2007. Diese Excel-Datei ist nicht geschützt undfrei verwendbar. In den einzelnen Kapiteln wird die jeweils dazu gehörende ExcelTabelle angegeben, so dass diese leicht gefunden werden kann.Einige Themen und Basic-Berechnungen wurden den Büchern von Müller-

Erlwein und Ebert, Ederer entnommen.

VIII Berechnungen in der Chemie und Verfahrenstechnik mit Excel-VBA

Inhaltsverzeichnis

1 Funktionen für Excel und VBA 11.1 Erstellen einer VBA Funktion 11.2 Makros, aufnehmen und bearbeiten 91.3 Einführung in die VBA Programmierung 171.3.1 Daten in Tabellen und in VBA verbinden 171.4 Eigenes Programm schreiben 341.5 Berechnungen in eigener Benutzeroberfläche ausführen 361.6 Menüs programmieren 491.7 Grafische Darstellungen in 3D 541.8 Dreiecksdiagramme 641.9 Datenaustausch mit Dateien 74

2 Mathematische Methoden 842.1 Funktionen und ihre grafische Darstellung 842.2 Berechnen von Reihen 922.3 Steigung und Minimum einer Funktion 1002.4 Nullstellensuche 1102.5 Lösen von kubischen Gleichungen, die Cardanische Formel 1142.6 Lösen von Gleichungssystemen, die Gauß-Jordan Methode 1282.7 Numerische Integration nach Simpson 1352.8 Numerische Lösung von Differentialgleichungen, die Runge-Kutta-

Methode 1422.9 Partielle Differentialgleichungen 1472.10 Lineare Regression 155

3 Anwendungen in Chemie und Verfahrenstechnik 1653.1 Maßeinheiten und deren Umrechnung 1653.2 Berechnung von Gemischen 1733.3 Molgewicht eines Moleküls aus der Summenformel 1823.4 Füllstandsberechnung von Behältern 1883.5 Reale Gasgleichung nach van der Waals und

Soave-Redlich-Kwong 1983.6 Kompression und Expansion eines Gases 216

IX

3.7 Kompression realer Gase 2293.8 Die barometrische Höhenformel der Atmosphäre 2303.9 Molekularpotentiale nach Coulomb 2323.10 Chemisches Gleichgewicht nach van´t Hoff und Gibbs 2533.11 Methanisierung-Shift nach van t’Hoff 2643.12 Reaktion nach Gibbs 2873.13 Chemische kinetische Reaktion nach Arrhenius 2913.14 Verbrennungsrechnung 3023.15 Polymerisation 3153.16 Elektrochemische Reaktion, Brennstoffzelle 3213.17 Wärme- und Stoffaustausch, stationär und instationär 3303.17.1 Wärmeaustausch 3303.17.2 Stoffaustausch 3393.18 Dampf-Flüssiggleichgewicht, McCabe-Thiele-Diagramm 3463.19 Flüssig-Flüssiggleichgewicht 3563.20 Fest-Flüssiggleichgewicht 3733.21 Batchdestillation nach Rayleigh und Schlünder 3833.22 Das Biot-Savart-Gesetz und dessen Anwendung 399

4 Anhang 4124.1 Auswahlmenü in Excel 4124.2 Kopieren von Excel Tabellen 4144.3 Inhaltsverzeichnis 4214.3.1 Querverweis Literaturverzeichnis 4284.3.2 Bildunterschriften 4304.4 Formelnummerierung 4334.4.1 Stichwortverzeichnis 4374.5 Tastenkombination 440

5 Literaturverzeichnis 443

Index 446

X Inhaltsverzeichnis

1.1 Erstellen einer VBA Funktion | 1

1 Funktionen für Excel und VBA

Sie lernen hier, wie man VBA in Excel aufruft und damit arbeitet. Sie erstellen eine Funktion und ein Makro und verwenden diese in Excel.

1.1 Erstellen einer VBA Funktion

Tabelle: Polynom

Modul: Polynom

VBA: Polynomf

Wir wollen hier eine Polynom-Funktion sowohl in Excel als auch in VBA erstellen und dann bewerten.

Starten Sie Excel 2007 und tragen Sie in Zelle B3 und B4 jeweils die Zahl 1 ein.

Nun schreiben Sie in die Zelle C3 1 + 2*B3+3*B3*B3:

Abb. 1.1-1 Polynom Daten

Dies wird ebenfalls in die Bearbeitungsleiste (fx = …) übertragen. Das Ergebnis steht unmit-telbar zur Verfügung.

Nun wenden wir uns der Alternative zu, nämlich die gleiche Berechnung in VBA durchzufüh-ren.

Zum Start von VBA in Excel drücken Sie Alt + F11 oder wählen „Entwicklungstools“ , „Visu-alBasic“. Damit öffnet sich die Oberfläche von VBA.

Anm.: Wir gehen hier von einer leeren Excel-Mappe aus.

2 | 1 Funktionen für Excel und VBA

Abb. 1.1-2 Oberfläche Visual Basic (VBA)

Falls die rechte Fläche grau ist, klicken Sie doppelt auf „Tabelle1 (Tabelle1)“. Die rechte Flä-che wird nun weiß. Wählen Sie nun „Einfügen“ im Hauptmenü und „Modul“.

Abb. 1.1-3 Einfügen Modul

Excel hat das Modul links oben in das VBA-Projekt Fenster hinzugefügt:

1.1 Erstellen einer VBA Funktion | 3

Abb. 1.1-4 Neues Modul

Im Eigenschaftsfenster tragen Sie den Namen „Polynom“ ein.

Abb. 1.1-5 Polynom als Modul

Klicken Sie doppelt auf „Polynom“ im Projektfenster. Der Cursor blinkt im rechten großen Fenster. Wählen Sie nun „Einfügen“ und „Prozedur“: