{"id":4976,"date":"2019-10-22T06:55:02","date_gmt":"2019-10-22T04:55:02","guid":{"rendered":"https:\/\/blogs.autodesk.com\/bimblog\/?p=4976"},"modified":"2020-03-17T13:31:29","modified_gmt":"2020-03-17T12:31:29","slug":"listen-aus-dynamo-mit-excel-synchronisieren","status":"publish","type":"post","link":"https:\/\/blogs.autodesk.com\/bimblog\/listen-aus-dynamo-mit-excel-synchronisieren\/","title":{"rendered":"Listen aus Dynamo mit Excel synchronisieren"},"content":{"rendered":"<p>In den letzten Beitr\u00e4gen haben Sie gelernt, wie Sie<a href=\"https:\/\/blogs.autodesk.com\/bimblog\/revit-elemente-und-eigenschaften-abrufen\/\"> Bauteile aus Revit<\/a> und <a href=\"https:\/\/blogs.autodesk.com\/bimblog\/revit-eigenschaften-mit-dynamo-auslesen\/\">Ihre Eigenschaften<\/a> abrufen, sowie anschlie\u00dfend diese <a href=\"https:\/\/blogs.autodesk.com\/bimblog\/listen-in-dynamo-sortieren-und-filtern\/\">Listen sortieren und filtern<\/a>. Heute gehen wir einen Schritt weiter und sehen uns an, wie diese Listen mit Excel synchronisiert werden k\u00f6nnen. Dieser Anwendungsfall kann besonders interessant sein, wenn in Excel weitere Berechnungen und Auswertungen stattfinden oder Sie Kollegen haben, die bestimmte Daten wie z.B. Raumbelegung oder Schl\u00fcsselnummern von T\u00fcren\/R\u00e4umen pflegen, aber keinen Zugriff auf Revit haben.<\/p>\n<p>Um eine T\u00fcrliste nach Excel zu exportieren, werden logischerweise zun\u00e4chst die T\u00fcren und die Eigenschaften, die in der Liste auftauchen sollen, abgefragt. Es k\u00f6nnen an sich beliebig viele Eigenschaften sein &#8211; diese werden dann einfach mit der Node <em>List.Create<\/em> wieder in einer Liste f\u00fcr die weitere Bearbeitung gesammelt:<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-23-37.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-4977\" src=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-23-37-1024x311.jpg\" alt=\"\" width=\"640\" height=\"194\" srcset=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-23-37-1024x311.jpg 1024w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-23-37-300x91.jpg 300w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-23-37-768x234.jpg 768w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-23-37.jpg 1832w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Die Nodes f\u00fcr die Excel Anbindung finden Sie standardm\u00e4\u00dfig in Dynamo unter Data:<\/p>\n<p><a href=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-43-42.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-4978\" src=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-43-42-300x207.jpg\" alt=\"\" width=\"300\" height=\"207\" srcset=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-43-42-300x207.jpg 300w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_17-43-42.jpg 556w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Beide Nodes besitzen mehrere Inputs, die unter dem Mauszeiger weitere Infos und Tipps anzeigen:<\/p>\n<p><strong>ExportExcel:<\/strong><\/p>\n<ul>\n<li>filepath: Dateipfad der Microsoft Excel Tabelle (Diese muss vorher angelegt sein!)<\/li>\n<li>sheetName: Name des Arbeitsblatts (String)<\/li>\n<li>startRow: Erste Zeile durchnummeriert und beginnend mit 0 (Integer \/ Ganzzahl)<\/li>\n<li>startColumn: Erste Spalte durchnummeriert und beginnend mit 0 (Integer \/ Ganzzahl) &#8211; Achtung in beiden F\u00e4llen: Dynamo kennt die Excel Bezeichnungen f\u00fcr Zeilen und Spalten nicht, sondern z\u00e4hlt diese einfach beginnend mit 0 durch<\/li>\n<li>data: hier werden die Daten eingepflegt, die vorher mit list.Create gesammelt wurden<\/li>\n<li>overWrite: optional, hier kann mit dem Boolean Schalter wahlweise entweder das gesamte Dokument \/ vorhandene Daten \u00fcberschreiben werden (TRUE) oder nur gezielt die angegebenen Felder (FALSE). Die Standardvorgabe ist FALSE, dieser macht z.B. auch Sinn, wenn sie eine vorbereitete Excel Vorlage nutzen<\/li>\n<\/ul>\n<p><strong>ImportExcel:<\/strong><\/p>\n<ul>\n<li>file: die Datei (Microsoft Excel Tabelle) &#8211; Achtung, dieser Input unterscheidet sich etwas von dem bei der Exportfunktion, mehr dazu sp\u00e4ter in diesem Artikel<\/li>\n<li>sheetName: Name des Arbeitsblatts (String)<\/li>\n<li>readAsStrings: wieder mit dem Boolean Schalter zu steuern, erlaubt das Auslesen aller Werte als String = Zeichenfolge (TRUE) oder automatisch nach Inhalt Integer \/ Number \/ String etc. (FALSE, Vorgabewert)<\/li>\n<li>showExcel: mit Boolean Schalter zu steuern, erlaubt das Einlesen im Hintergrund, ohne Excel aktiv zu \u00f6ffnen (FALSE) bzw. das automatische \u00d6ffnen der Tabelle in Excel (TRUE, Vorgabe)<\/li>\n<\/ul>\n<p><strong>TIPP: Alle Inputs, die einen Vorgabewert besitzen (z.B. overWrite, showExcel) k\u00f6nnen, m\u00fcssen aber keine Nodes als Eingabe besitzen. Alle anderen Inputs m\u00fcssen zwingend verbunden werden!\u00a0<\/strong><\/p>\n<p>Um nun die Excel Tabelle zu exportieren, m\u00fcssen alle Inputs wie folgt angegeben werden:<\/p>\n<p><a href=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-05-44-1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-4981\" src=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-05-44-1-1024x294.jpg\" alt=\"\" width=\"640\" height=\"184\" srcset=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-05-44-1-1024x294.jpg 1024w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-05-44-1-300x86.jpg 300w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-05-44-1-768x220.jpg 768w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Das Feld Kommentare kann nun in Excel bef\u00fcllt und nach Revit synchronisiert werden &#8211; nat\u00fcrlich k\u00f6nnen auch andere Parameter auf diesem Wege beschreiben werden, wichtig ist nur, dass der Parameter nicht schreibgesch\u00fctzt ist (wie z.B. Fl\u00e4che, Ebene) und dass der Datentyp richtig ist. Das Kommentarfeld z.B. ist ein Textfeld, daher k\u00f6nnen hier nur String Werte aus Dynamo eingelesen Werte; Parameter mit dem Datentyp Ganzzahl entsprechen Integer ist Dynamo, etc.<\/p>\n<p>Bei der Node <em>ImportExcel<\/em> ist zu beachten, dass hier nicht der File Path sonder das File selbst verlangt wird &#8211; das ist eine Eigenart dieser Node, weswegen die Node <em>File from Path<\/em> dazwischengeschaltet werden muss:<\/p>\n<p><a href=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-28-30.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-4982\" src=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-28-30-1024x315.jpg\" alt=\"\" width=\"640\" height=\"197\" srcset=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-28-30-1024x315.jpg 1024w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-28-30-300x92.jpg 300w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-28-30-768x236.jpg 768w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-28-30.jpg 1624w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>Das Ergebnis liest hier die ganze Tabelle Zeile f\u00fcr Zeile aus, weswegen wir diese nat\u00fcrlich erstmal bereinigen m\u00fcssen, da wir nur die Werte aus der Spalte Kommentare nach Revit zur\u00fcck schreiben m\u00f6chten:<\/p>\n<p><a href=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-37-56.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-4983\" src=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-37-56-1024x362.jpg\" alt=\"\" width=\"640\" height=\"226\" srcset=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-37-56-1024x362.jpg 1024w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-37-56-300x106.jpg 300w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-37-56-768x272.jpg 768w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>Die so bereinigten Daten k\u00f6nnen nun einfach mit den bereits in den letzten Blogposts gelernten Methoden an die T\u00fcren geschreiben werden:<\/p>\n<p><a href=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-48-11.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-4984\" src=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-48-11-1024x464.jpg\" alt=\"\" width=\"640\" height=\"290\" srcset=\"https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-48-11-1024x464.jpg 1024w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-48-11-300x136.jpg 300w, https:\/\/blogs.autodesk.com\/bimblog\/wp-content\/uploads\/sites\/108\/2019\/10\/21-10-_2019_18-48-11-768x348.jpg 768w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Die Listen in Dynamo bzw. in Excel d\u00fcrfen nicht neu sortiert werden, da ansonsten die Zugeh\u00f6rigkeit der beiden Listen nicht gegeben ist! Falls eine Sortierung n\u00f6tig ist, m\u00fcssen entweder beide Listen sortiert werden, oder es muss zus\u00e4tzlich mit der Revit IDs gearbeitet werden, die ebenfalls als eine separate Spalte nach Excel exportiert werden k\u00f6nnen. Aber dazu mehr in n\u00e4chsten Blogbeitr\u00e4gen!<br \/>\nExport und Import von Excel Dateien ist auch nur auf einem Rechner mit installiertem Excel m\u00f6glich &#8211; ansonsten k\u00f6nnen die CSV Nodes genutzt werden.<\/p>\n<h3><a href=\"https:\/\/drive.autodesk.com\/de29d19ae\/g\/shares\/SH919a0QTf3c32634dcf5b53e7fef4658c23\">Laden Sie hier das Skript herunter<\/a>\u00a0(erfordert Dynamo 2.x)<\/h3>\n<p>&nbsp;<\/p>\n<p><em>Thema n\u00e4chsten Dienstag:<strong> Familien in Revit mit Hilfe von Dynamo platzieren<\/strong><br \/>\nInteressieren Sie bestimmte Themen? Dann hinterlassen Sie uns ein Kommentar und nach M\u00f6glichkeit werden wir es in einem der n\u00e4chsten Blogposts behandeln!\u00a0<\/em><\/p>\n<p>&nbsp;<\/p>\n<h3>Weiterf\u00fchrende Links:<\/h3>\n<p><a href=\"http:\/\/dynamobim.com\/\">Offizielle Dynamo Website und Forum<\/a><\/p>\n<p><a href=\"http:\/\/dynamoprimer.com\/\">Dynamo Primer \u2013 digitales Dynamo Handbuch\u00a0<\/a><\/p>\n<p><a href=\"http:\/\/dynamobim.org\/wp-content\/uploads\/forum-assets\/colin-mccroneautodesk-com\/07\/10\/Dynamo_language_guide_version_1.pdf\">Dynamo Language Guide (PDF, Englisch)<\/a><\/p>\n<p><a href=\"https:\/\/www.youtube.com\/embed\/videoseries?list=PLmkUrbEZiEDJ-otdyBL3OY8ZejyYia29c\">Deutschsprachige Videotutorials<\/a>\u00a0(etwas \u00e4lter, als Einstieg dennoch gut geeignet)<\/p>\n<p><a href=\"https:\/\/de.linkedin.com\/learning\/dynamo-2-x-essential-training\">LinkedIn Learning Dynamo Training<\/a>\u00a0(Englisch)<\/p>\n<p><a href=\"https:\/\/blogs.autodesk.com\/bimblog\/category\/dynamo\">Alle Blogbeitr\u00e4ge zum Thema Dynamo<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In den letzten Beitr\u00e4gen haben Sie gelernt, wie Sie<a href=\"https:\/\/blogs.autodesk.com\/bimblog\/revit-elemente-und-eigenschaften-abrufen\/\"> Bauteile aus Revit<\/a> und <a href=\"https:\/\/blogs.autodesk.com\/bimblog\/revit-eigenschaften-mit-dynamo-auslesen\/\">Ihre Eigenschaften<\/a> abrufen, sowie anschlie\u00dfend diese <a href=\"https:\/\/blogs.autodesk.com\/bimblog\/listen-in-dynamo-sortieren-und-filtern\/\">Listen sortieren und filtern<\/a>. Heute gehen wir einen Schritt weiter und sehen uns an, wie diese Listen mit Excel synchronisiert werden k\u00f6nnen. Dieser Anwendungsfall kann besonders interessant sein,<\/p>\n","protected":false},"author":4680,"featured_media":4945,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[918],"tags":[958],"class_list":["post-4976","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dynamo","tag-dynamo-dienstag"],"acf":[],"_links":{"self":[{"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/posts\/4976","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/users\/4680"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/comments?post=4976"}],"version-history":[{"count":0,"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/posts\/4976\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/media\/4945"}],"wp:attachment":[{"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/media?parent=4976"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/categories?post=4976"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.autodesk.com\/bimblog\/wp-json\/wp\/v2\/tags?post=4976"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}