| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: VBA Excel (1426 mal gelesen)
|
gladi71 Mitglied Technischer Zeichner
Beiträge: 25 Registriert: 07.06.2009 Inventor 2014
|
erstellt am: 15. Apr. 2013 21:50 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, hab eine Stückliste aus IV2013 exportiert. Diese öffne ich mit EXCEL 2010, soweit so gut. Nun soll in Spalte J die Angaben so geändert werden, das "_kg" gelöscht wird und die Spalte im Zahlenformat dargestellt wird für wetere Berechnungen. Mit Makro aufgezeichnet und getestet. Fehler tritt auf wenn es große Werte sind (kg-Angaben) z.B so: Schritte: 123,456 kg -> 123,456 kg wurde entfernt 123,456 in Zahl umformatiert, -> 123.456 wird angezeigt wähle ich die Zelle an wird bei fx folgendes dargestellt -> 123456 (wo kommt das 1000er Trennzeichen her?) Hoffe jemand kann mir folgen was ich meine, danke im Voraus für Eure Unterstützung! Das ganze sollte in einem VBA-Code durchführbar sein. Grüße gladi71 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2428 Registriert: 15.11.2006 Windows 10 x64, AIP 2023
|
erstellt am: 16. Apr. 2013 07:21 <-- editieren / zitieren --> Unities abgeben: Nur für gladi71
Moin Das Makro läuft in Excel? Wie erfolgt die Konvertierung in eine Zahl (Code)? Das Tausendertrennzeichen ist entweder die Standardzahlenformatierung von Excel oder du hast es selbst eingebaut. Wäre schon praktisch wenigstens den Schnipsel der Fomatierung mal zu sehen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gladi71 Mitglied Technischer Zeichner
Beiträge: 25 Registriert: 07.06.2009 Inventor 2014
|
erstellt am: 16. Apr. 2013 20:32 <-- editieren / zitieren --> Unities abgeben:
|
freierfall Ehrenmitglied V.I.P. h.c. Techniker
Beiträge: 11547 Registriert: 30.04.2004 WIN10 64bit, 32GB RAM IV bis 2022
|
erstellt am: 16. Apr. 2013 20:50 <-- editieren / zitieren --> Unities abgeben: Nur für gladi71
|
gladi71 Mitglied Technischer Zeichner
Beiträge: 25 Registriert: 07.06.2009 Inventor 2014
|
erstellt am: 16. Apr. 2013 21:27 <-- editieren / zitieren --> Unities abgeben:
Hier ein Ausschnitt des Makros, im Anhang eine test-Datei wie ich Sie aus IV2013 exportiert habe. Bei Schrittweiser ausführung des Makros sieht man den Fehler nach dem Suchen - ersetzen von "kg" entsteht. Makro wurde mit dem MAkrorecorder aufgenommen. Sub Format() ' ' Format Makro ' ' Cells.Select Selection.Columns.AutoFit Selection.Replace What:="St37-2", Replacement:="ja", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Range("J2:J108").Select Selection.Replace What:=" kg", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Canadabear Mitglied Konstrukteur
Beiträge: 921 Registriert: 30.06.2010 Inventor 2020 SolidWorks 2020
|
erstellt am: 16. Apr. 2013 22:39 <-- editieren / zitieren --> Unities abgeben: Nur für gladi71
Hallo, das Problem ist das EXCEL das Komma als Tausendertrennzeichen ansieht, aber nicht bei den mit fuehrenden Null Werten. wandle erst das Komma in einen Dezimalpunkt um und dann entferne das kg. Range("J2:J108").Select Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:=" kg", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Gruss Ray ------------------ Barbarus hic ego sum, quia non intellegor ulli! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gladi71 Mitglied Technischer Zeichner
Beiträge: 25 Registriert: 07.06.2009 Inventor 2014
|
erstellt am: 16. Apr. 2013 23:01 <-- editieren / zitieren --> Unities abgeben:
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|