| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY bietet das umfangreichste Ökosystem von B2B als auch B2C-Lösungen für IT-Akteure auf dem Markt, eine Pressemitteilung
|
Autor
|
Thema: Flächenauswertung ADT2006 (11053 mal gelesen)
|
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 07. Feb. 2007 16:16 <-- editieren / zitieren --> Unities abgeben:
Hallo, bei der Flächenauswertung über eine Exceltabelle werden 12 Zeilen für die Darstellung der einzelnen Teilflächen verwendet. So kompliziert sind meine Räume nicht. Somit sind hinter den Skizzen immer 4 Leerzeilen in der Auswertung. Dies bläht die Seitenzahl erheblich auf. Da für jeden Raum insgesamt 16 Zeilen dargestellt werden, könnte ich die Seitenzahl um ein Viertel reduzieren. Gibt es eine Möglichkeit, die darzustellende Zeilenzahl irgendwo einzustellen? Viele Grüße Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dani100 Mitglied Architekt (Dipl.-Ing.)
Beiträge: 360 Registriert: 22.09.2003 ACA 2014 (2017/2019) WIN 8.1, DACH-Erweiterungen
|
erstellt am: 07. Feb. 2007 20:27 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Hallo, es wurde hier auch schon des öfteren beklagt, dass Flächenauswertung/ Nachweis zu wünschen übrig lassen. Da mußt du wohl leider löschen und anpassen oder programmieren oder dir mal eine Applikation anschauen. Gruß Dani Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 08. Feb. 2007 08:06 <-- editieren / zitieren --> Unities abgeben:
|
charlieBV Ehrenmitglied V.I.P. h.c. Bauzeichnerin
Beiträge: 9319 Registriert: 28.08.2003 Win 10 Pro
|
erstellt am: 08. Feb. 2007 08:10 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Hi z.b. das hier, oder das hier. Ich kann dazu nichts sagen, wir bearbeiten die ADT-Berechnung nach... Oder machen sie bei einfachen Grundrissen in Excel selbst.
------------------ Gruß Yvonne ADT-Help-Site "Diskutiere niemals mit einem Idioten. - Er zieht dich auf sein Niveau herab und schlägt dich dort durch Erfahrung!" Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 08. Feb. 2007 08:58 <-- editieren / zitieren --> Unities abgeben:
Hallo Yvonne, vielen Dank für die Links. So kompliziert wollte ich es aber gar nicht machen. Die Flächenzuordnungen habe ich ja bereits und die Exceltabelle habe ich nun auch so hingebastelt, wie ich es gerne haben wollte. Ging übrigens alles ganz einfach. Es stören mich nur noch die vielen Leerzeilen in der fertigen Tabelle. Wenn ich ein Sanierungsobjekt mit 100 Wohnungen habe, so ändern sich die Flächen dort ständig. Ich müsste also bei jeder neuen Berechnung 100 mal 4 Leerzeilen löschen. Alternativ kann ich das Ganze auch unbearbeitet ausdrucken. Nur sind das halt jedesmal 400 Seiten. Und da wäre es schon ganz schön, wenn man das auf einfache Art um ein Viertel reduzieren könnte. Viele Grüße sendet Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HerbertSimon Mitglied Innenarchitekt
Beiträge: 453 Registriert: 10.04.2003 ACA2013, Win10 64, "Zuletzt kann niemand aus den Dingen, die Bücher eingerechnet, mehr heraushören, als er bereits weiß" (Nietzche) ..und das hat er schon gesagt, bevor es Handbücher für ADT gab!!
|
erstellt am: 08. Feb. 2007 10:00 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Hallo, zum löschen der leeren Zeilen kannst Du Dir ein Makro für Excel bauen. z.B. so wie das folgende. Da werden alle Zeilen gelöscht, ausser es steht in bestimmten Zellen etwas. Ich benutze dieses Makro bei Preisspiegeln. Must Du Dir entsprechend umbauen oder mal im Excel Forum gucken. Mit diesem Makro kann man leere Zeilen in einem Sheet löschen. Sub leere_Zeilen_loeschen() ' Makro am 02.11.2002 aus dem Excel Forum geholt ' Die Zahlen in ' If Cells(i, 1) = "" And Cells(i, 5) = "" Then ' hier 1 + 5, geben die Spalten an, hier z.B. A = 1 + E = 5 ' in der etwas stehen soll als Bedingung für das Nicht-Löschen der Zeile Dim i As Integer, a As Byte For i = [A65000].End(xlUp).Row To 1 Step -1 If Cells(i, 1) = "" And Cells(i, 5) = "" Then Rows(i).EntireRow.Delete End If Next End Sub Gruß Herbert
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 08. Feb. 2007 10:59 <-- editieren / zitieren --> Unities abgeben:
|
runkelruebe Ehrenmitglied V.I.P. h.c. Straßen- / Tiefbau
Beiträge: 8086 Registriert: 09.03.2006 langweilt sich auch ohne AdventureDeskTop nicht
|
erstellt am: 08. Feb. 2007 11:19 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Vielleicht auch einfach mal den Autofilter von Excel nutzen ;-) Spalte wählen -> Menü: Daten -> Extras -> Autofilter dann beim erscheinenden Pfeil den Eintrag "NichtLeere" wählen... ------------------ Gruß, runkelruebe Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 08. Feb. 2007 15:48 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe mich mal rangesetzt und ein kleines Makro geschrieben. Für alle die es interessiert schicke ich es nachfolgend mit. Das Makro geht davon aus, dass nur die folgenden Daten von AutoCad ausgegeben werden: Flächen-Name Beschriftung anrechenbar Fläche Ergebnis anrechenbare Fläche Beschriftung Berechnungsregel Formel Berechnungsregel Ergebnis Berechnungsregel Beschriftung Berechnungsnachweis Formel Berechnungsnachweis Ergebnis Berechnungsnachweis Berechnungsskizze Damit funktioniert das Makro ganz gut. Für alles andere muss es angepasst werden. Sicherlich werden Makrospezialisten einiges besser und eleganter machen. Aber vielleicht hilft es den einen oder anderen User dennoch weiter. Viele Grüße sendet Bernd Sub AutoCad_Flaechen_formatieren() ' Die Zahlen in ' If Cells(i, 1) = "" And Cells(i, 5) = "" Then ' hier 1 + 5, geben die Spalten an, ' in der etwas stehen soll, als Bedingung für das Nicht-Löschen der Zeile Dim i As Integer, a As Byte ' löscht 3 Zeilen über "Anrechenbare Fläche" wenn erste Spalte leer ist For i = [A65000].End(xlUp).Row To 1 Step -1 If Cells(i, 2) = "Anrechenbare Fläche" Then i = i - 2 If Not Cells(i, 1) = "" Then i = i - 1 End If Rows(i).EntireRow.Delete i = i - 1 Rows(i).EntireRow.Delete i = i - 1 Rows(i).EntireRow.Delete End If Next ' löscht 2 Zeilen über der Flächenberechnung For i = [A65000].End(xlUp).Row To 1 Step -1 If Cells(i, 2) = "A1 (I):" Or Cells(i, 2) = "A1 (II):" Or Cells(i, 2) = "A1 (III):" Or Cells(i, 2) = "A1 (IV):" Then i = i - 1 If Cells(i, 2) = "" Then Rows(i).EntireRow.Delete i = i - 1 If Not Cells(i, 2) = "" Then i = i - 1 End If Rows(i).EntireRow.Delete End If End If Next ' verschieben der Raumflächen um eine Spalte nach rechts For i = [A65000].End(xlUp).Row To 1 Step -1 If Cells(i, 2) = "Anrechenbare Fläche" Then Range("D" & i).Select Selection.Cut Range("E" & i).Select ActiveSheet.Paste Selection.Font.Bold = True End If Next ' verschieben der Gesamtflächen um eine Spalte nach rechts For i = [A65000].End(xlUp).Row To 1 Step -1 If Cells(i, 2) = "Basisfläche" Then Range("D" & i).Select Selection.Cut Range("F" & i).Select ActiveSheet.Paste Range("E" & (i + 1)).Select Selection.Cut Range("F" & (i + 1)).Select ActiveSheet.Paste Range("B" & (i + 1)).Select Selection.Font.Bold = True End If Next End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dr-nikolai Ehrenmitglied
Beiträge: 1790 Registriert: 10.04.2002
|
erstellt am: 08. Feb. 2007 16:10 <-- editieren / zitieren --> Unities abgeben: Nur für skp
|
runkelruebe Ehrenmitglied V.I.P. h.c. Straßen- / Tiefbau
Beiträge: 8086 Registriert: 09.03.2006 langweilt sich auch ohne AdventureDeskTop nicht
|
erstellt am: 08. Feb. 2007 22:14 <-- editieren / zitieren --> Unities abgeben: Nur für skp
N'Abend zusammen, ich sehe Zuwachs in der Excel-Familie, schön :-) einfacher Autofilter tut's hier wohl nicht, da sollen auch noch Spalten geschubst werden und da wollte ich grad mal etwas straffend tätig werden so'n i = i - 2 Rows(i).EntireRow.Delete i = i - 1 Rows(i).EntireRow.Delete i = i - 1 Rows(i).EntireRow.Delete sollte auch mit nem Rows(iZ - 2 & ":" & iZ - 4).EntireRow.Delete gehen und die Selektiererei am Ende bekommen wir bestimmt auch noch weg ;-)
und siehe da, ich fange an zu zweifeln, was das Ding denn jetzt wirklich genau löschen soll und vor allem wann... Stellst Du bitte mal eine Excel-Mappe im Urzustand rein also die "schäbige" Export-Datei? sowas kann ich nicht selber herstellen und ich würd's gerne mal testen ------------------ Gruß, runkelruebe Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Mitglied Architekt
Beiträge: 1361 Registriert: 13.02.2003 Win7ultimate/ACA2010
|
erstellt am: 08. Feb. 2007 23:20 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Hallo liebe Rübe;-) genauso in etwa hätte ich das auch strukturiert begonnen zu programmieren, aaaber Maestro Max war der Meinung, ist doch alles ********;-) Er hat das alles mit Find() gelöst, was ich eigentlich anders gemacht hätte, aber hookay, wenn der Maestro schon im Millisekundenbereich liegt & misst, dann halte ich mich besser zurück. Aber Nicole hat Recht, interessant wäre es mal, aus welcher Basiseinstellung heraus ihr den Export nach *.xls tätigt, soll heissen: - Berechnungsskizzen y/n - Übersichtskizzen y/n - Basisumfänge/anrechenbare Flächen ... etc pp. das wäre mal wirklich interessant, mit welchen Optionen ihr exportiert. Wenn man da mal einen gewissen 'Quasistandard' hätte, liesse sich ggf. ein Makro schreiben, was sich dementsprechend anpassen liesse. Die Frage der Fragen ist halt die, wie und was exportiert ihr hauptsächlich, um erstmal einen gemeinsamen Ansatz zu finden, wäre es tatsächlich nicht schlecht, mal eine beispiel.xls hochzuladen. Gruss Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Nepumuk Mitglied Entwicklungsleiter
Beiträge: 351 Registriert: 16.10.2004
|
erstellt am: 08. Feb. 2007 23:25 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Liebes runkelruebchen, Shanghai-Nancy hat wieder zugeschlagen und das ist dabei rausgekommen: Code: Sub AutoCad_Flaechen_formatieren() Dim objCell1 As Range, objCell2 As Range, objRange As Range, strAddress As String Application.ScreenUpdating = False Set objRange = Rows(Rows.Count) Set objCell1 = Columns(2).Find(What:="Anrechenbare Fläche", After:=Cells(Rows.Count, 2)) If Not objCell1 Is Nothing Then strAddress = objCell1.Address Do Set objCell2 = Columns(2).Find(What:="Basisumfang", After:=objCell1) If Not objCell2 Is Nothing Then Set objRange = Union(objRange, Range(objCell2, objCell2.Offset(4)).EntireRow) objCell2.EntireRow.Copy Destination:=objCell1.Offset(1, -1) objCell1.Offset(-1, 2).Cut Destination:=objCell1.Offset(-1, 3) objCell1.Offset(0, 2).Cut Destination:=objCell1.Offset(0, 4) objCell1.Offset(1, 2).Cut Destination:=objCell1.Offset(1, 5) End If Set objCell1 = Columns(2).Find(What:="Anrechenbare Fläche", After:=objCell1) Loop While Not objCell1 Is Nothing And objCell1.Address <> strAddress objRange.Delete End If Columns(1).MergeCells = False Application.ScreenUpdating = True End Sub
------------------ Gruß Nepumuk Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 09. Feb. 2007 08:31 <-- editieren / zitieren --> Unities abgeben:
Hallo, woher wusste ich, dass es Leute gibt, die unbedingt den Code verbessern müssen? Er funktioniert auch bei großen Dateien problemlos und das innerhalb von 2 bis 3 Sekunden. Sicherlich geht es auch schneller. Aber mir persönlich ist es zu aufwändig, für vielleicht 10 Sekunden Zeitvorteil im Jahr eine halbe Stunde rumzuprogrammieren. Für alle die es dennoch nicht lassen können, schicke ich die Ursprungs- und die Zieldatei. Ersteres wird mit den genannten Einstellungen von AutoCad produziert. Wenn ihr einmal dabei seid: Ein paar Striche wären in der Zieltabelle nicht schlecht. Hier könnt ihr die beiden Dateien runterladen: http://www.datenschleuder.eu/get_4a4e3a4a35311f2b9388e7c59027eb61.html (der Anhang wollte in diesem Forum nicht so wie ich es wollte, daher ein externer Link) Viele Grüße und ein schönes Wochenende wünscht Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
runkelruebe Ehrenmitglied V.I.P. h.c. Straßen- / Tiefbau
Beiträge: 8086 Registriert: 09.03.2006 langweilt sich auch ohne AdventureDeskTop nicht
|
erstellt am: 09. Feb. 2007 08:59 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Zitat: woher wusste ich, dass es Leute gibt, die unbedingt den Code verbessern müssen? Er funktioniert auch bei großen Dateien problemlos und das innerhalb von 2 bis 3 Sekunden. Sicherlich geht es auch schneller. Aber mir persönlich ist es zu aufwändig, für vielleicht 10 Sekunden Zeitvorteil im Jahr eine halbe Stunde rumzuprogrammieren.
1. weil's Spaß macht 2. weil man nicht dümmer wird 3. weil es vielleicht noch mehr Leute gibt, die sowas später nutzen wollen 4. weil Du ihn ja nicht verwenden mußt ;-) aber danke für's hochladen. ------------------ Gruß, runkelruebe Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Nepumuk Mitglied Entwicklungsleiter
Beiträge: 351 Registriert: 16.10.2004
|
erstellt am: 09. Feb. 2007 09:41 <-- editieren / zitieren --> Unities abgeben: Nur für skp
|
dani100 Mitglied Architekt (Dipl.-Ing.)
Beiträge: 360 Registriert: 22.09.2003 ACA 2014 (2017/2019) WIN 8.1, DACH-Erweiterungen
|
erstellt am: 09. Feb. 2007 10:49 <-- editieren / zitieren --> Unities abgeben: Nur für skp
|
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 09. Feb. 2007 10:52 <-- editieren / zitieren --> Unities abgeben:
|
dr-nikolai Ehrenmitglied
Beiträge: 1790 Registriert: 10.04.2002
|
erstellt am: 09. Feb. 2007 10:59 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Zitat: Original erstellt von skp: Na, da werden ja deine Eltern stolz auf dich sein.
Richtig. Gut dass das wohl jeder von sich und seinen Eltern behaupten kann... Weitere fachliche Kommentare, oder soll ich den Thread zumachen? Gruß Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Nepumuk Mitglied Entwicklungsleiter
Beiträge: 351 Registriert: 16.10.2004
|
erstellt am: 09. Feb. 2007 11:33 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Hallo Mario, wir runkelruebe, startrek und ich (alle anderen sind natürlich auch herzlich eingeladen) wollen versuchen solche Listen (die gibt es ja in ganz unterschiedlichen Formaten) mit einer allgemeingültigen Routine (kleine DLL eventuell ???) zu formatieren. Sollen wir dazu einen neuen Thread aufmachen oder in diesem weiter? Dann müsste er nämlich offen bleiben. ------------------ Gruß Nepumuk Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dr-nikolai Ehrenmitglied
Beiträge: 1790 Registriert: 10.04.2002
|
erstellt am: 09. Feb. 2007 11:48 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Hi Nepumuk, bitte meinen Satz von oben nicht falsch verstehen. Ich bin mehr als dankbar, dass hier ungewohntes Konwhow im ADT-Forum Einzug hält. Davon können alle nur profitieren. Ich denke, meine "Drohung" ist dort angekommen, wo sie hinsollte. Also, macht weiter (skp, nepumuk, nancy, rübe, etc..) und lasst uns an Euren Ideen teilhaben. Gruß Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
skp Mitglied
Beiträge: 15 Registriert: 13.04.2005 AutoCAD Architecture 2011 Windows XP und Vista
|
erstellt am: 09. Feb. 2007 13:39 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von Nepumuk:[code]Sub AutoCad_Flaechen_formatieren() Dim objCell1 As Range, objCell2 As Range, objRange As Range, strAddress As String Application.ScreenUpdating = False Set objRange = Rows(Rows.Count) Set objCell1 = Columns(2).Find(What:="Anrechenbare Fläche", ....... [/B]
Hallo Nepumuk, ich habe mal dein Makro in meiner Ursprungsdatei (siehe oben stehender Link) durchlaufen lassen. Man wird ja nicht dümmer davon (hoffe ich jedenfalls). Woran liegt es, dass sich in meiner Tabelle überhaupt nichts tut? Sie sieht hinterher genauso aus wie vorher. Ob es sinnvoll ist, ein allgemeingültiges Makro zu erstellen, bezweifle ich. Da sind die Wünsche und die Ausgangsdaten dann wahrscheinlich doch zu verschieden. Viele Grüße sendet Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
surfen281 Mitglied Student
Beiträge: 499 Registriert: 08.09.2002 ACA 2023
|
erstellt am: 11. Feb. 2007 23:42 <-- editieren / zitieren --> Unities abgeben: Nur für skp
Hallo Leute! Toll wie man hier Programme-übergreifend zu Lösungen kommt! Habe dieses Problem selbst schon mal gepostet und bin dann mittels Bauteiltabellen zum gewünschten Ergebnis gekommen...(Reduktion der Leerzeilen in der Flächenauswertung - Umformatierung des ExcelExports....etc...) ...nur zur Abrundung des Themas... Liebe Grüße, mARTin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |