| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| Dassault Systèmes auf der Hannover Messe 2024 (kostenlose Tickets verfügbar) |
Autor
|
Thema: Makro, VBA: Automatische Spaltenbreite Stückliste (579 mal gelesen)
|
tjaard Mitglied
Beiträge: 26 Registriert: 14.06.2021
|
erstellt am: 07. Nov. 2021 11:51 <-- editieren / zitieren --> Unities abgeben:
Moin zusammen, ich würde gerne über ein Makro die Spaltenbreite einer Stückliste automatisch auf die Textlänge anpassen. Im Grunde die Funktion des Doppelklicks auf die Trennlinie. Ich habe einen alten Beitrag von Andi gefunden - die vorgeschlagene Lösung erschien mir allerdings sehr aufwendig. Gibt es da eventuell (mittlerweile) einen Befehl, der diese Funktion ausführen kann? Ich habe schon viel gesucht, allerdings - bis dato - nichts passendes gefunden. Ich danke Euch! Noch ein schönes Wochenende.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andi Beck Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2572 Registriert: 02.10.2006 Firma: SW 2023-4.0 + PDM Prof. Windows 10 Pro 64bit, i9-11900 32 GbRAM, Quadro P2200 Home: SW 2022-5.0 Passungstabelle von Heinz Windows 11 Pro 64bit, i7-12700K, 32 GbRAM, GeForce GTX 1050Ti Samsung C34H892, 3440x1440 Pixel
|
erstellt am: 07. Nov. 2021 15:46 <-- editieren / zitieren --> Unities abgeben: Nur für tjaard
Zitat: Original erstellt von tjaard:
Gibt es da eventuell (mittlerweile) einen Befehl, der diese Funktion ausführen kann?
Hallo, auf diesen Befehl warte ich schon lange. Bin ebenfalls stark daran Interessiert. Grüße, Andi ------------------ Hast du kein Problem? Such dir eins. ( Und löse es ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
riesi Mitglied CAD-Admin
Beiträge: 1073 Registriert: 06.05.2002 SWX Premium 2020-Sp5
|
erstellt am: 08. Nov. 2021 13:35 <-- editieren / zitieren --> Unities abgeben: Nur für tjaard
Ausprobiert habe ich es nicht, aber es muss in der Api von SolidWorks jede Tabellenzelle einmal durch laufen werden und die maximale Länge einer Zelle innerhalb der Spalte ermittelt werden, um anschließend die Breite zu setzen. sldworks.sldworks => modeldoc2 (ActiveDoc) => DrawingDoc: Den Featurebaum nach einer Stückliste absuchen (BomFeat) Damit bekomme ich ein Interface für TableAnnotation. Jede Tabellenzelle GetCellTextFormat abrufen und im TextFormat die LineLength abfragen. Wenn der höchste Wert gefunden wurde, diesen Wert plus etwas ExtraLuft als Spaltenbreite (SetColumnWidth) setzen. Ob die Einheiten zu einander passen, habe nie probiert. Als guten Startpunkt für dsa Makro halte ich: Get Components in Each BOM Table Row Example (VBA) aus der API-Hilfe für geeignet. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Werkzeugkonstrukteur Kunststoffverbindungstechnik (w/m/d) | Als weltweit operierendes Hightech-Unternehmen im Verband der international tätigen CREST-Gruppe projektieren und fertigen wir an unserem Standort Heppenheim Ultraschall- und Spritzreinigungsanlagen sowie Maschinen und Werkzeuge für die Verbindungstechnik von Serienteilen aus Kunststoff. Unsere Hauptverfahren in der Verbindungstechnik sind Ultraschall-, Vibrations-, Infrarot- und Heizelementschweißen sowie verschiedene Nietprozesse und Sonderlösungen.... | Anzeige ansehen | Konstruktion, Visualisierung |
|
nahe Ehrenmitglied
Beiträge: 1747 Registriert: 18.01.2001 arbeite mit: Dell Precision 7750 i7 2,6 GHz 6 Kerne 32GB RAM 512GB SSD NVIDIA Quadro RTX 4000 ------------------------ SWX-2020 SP5.0 EPDM ---------------- Windows 10 ---------------- VB.net VB VBA ein wenig Swift am Mac
|
erstellt am: 11. Nov. 2021 14:28 <-- editieren / zitieren --> Unities abgeben: Nur für tjaard
|