A) Zusammenführung Ich hab in deinen Dateien das aufgezeichnete Makro nicht gefunden. Aber das Makro funktioniert ja und muss nur noch eingebunden werden. Das aufgezeichnete Makro hat ja einen Namen. Du must nur in meinem Makro nach der Deklaration eine Zeile mit dem Aufruf dieses Makro einbauen:
Code:
Call Makroname
Dann wird es vor der Berechnung der Abstandstabellen ausgeführt.
B) Spalten Da die Seite jetzt in der 6. Spalte ist, must du in allen Zugriffen mit "varEingabe(...,4)" die 4 durch eine 6 ersetzen.
C) Nachkommastellen Du kannst alle Spalten ab "Ausgabe" markieren und über "Zellen formatieren " das Zahlenformat auf zwei Nachkommastellen begrenzen.
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
03.05.2018, 14:55 (Dieser Beitrag wurde zuletzt bearbeitet: 03.05.2018, 14:55 von grijo.)
Hallo Helmut,
das Macro einbinden hat gut geklappt und die Daten werden jetzt über das Makro eingelesen und danach vom Script berechnet. ( TXT Datei steht in einem Unterverzeichnis "SCRIPTS" )
Allerdings kann ich die Sache mit "varEingabe(...,4)" wird zu "varEingabe(...,6)" nicht nachvollziehen. "varEingabe(...,4)" kommt einmal im Script vor, wenn ich das zu "6" ändere dann wird die Tabelle für TOP nicht mehr erzeugt.
Ein weiteres Problem .... Wenn ich das Script 2x ablaufen lasse dann wird die Liste mit den Koordinaten nicht überschrieben, sondern es werden links 6 Spalten eingefügt und die Ergebnisliste rückt immer weiter nach rechts.
03.05.2018, 17:22 (Dieser Beitrag wurde zuletzt bearbeitet: 03.05.2018, 17:23 von Ego.)
Hallo Joachim,
A) zu Spalten Du hast im deinen manuell eingetragenen Überschriften zwischen "Y" und "Side" noch die Spalten "Net" und "Pin/Via". Da die Seite aber in der TXT-Datei in der vierten Spalte ist must du nichts ändern.
B) zu den eingefügten Spalten Du hattest in deinem Makro den RefreshStyle auf "xlInsertDeleteCells" gesetzt. Ich habe ihn jetzt auf "xlOverwriteCells" gesetzt und muste dadurch vor dem Import die alten Daten überschreiben und die Überschriften mit einlesen.
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Nachdem nun eine Kollege drübergeschaut hat kamen noch Anregungen die Tabelle zur besseren Übersichtlichkeit noch zu erweitern.
1. auf ein zusätzliches Blatt eine Tabelle die nur die Punkte auflistet die kleiner dem Sollwert sind. ( nur diese Punkte müssennachgearbeitet werden )
2. wenn man in der Ergebnistabelle auf den ROT markierten Text klickt ( also ein Wert < dem SOllwert ) ) dann sollten der dazugehörige Punkt ( z.B. Pos1 ) und die dazugehörige Koordinate angezeigt werden damit man im CAD System leichter die richtige Position findet.
Punkt 1 könnte ich sicherlich mit einem Makro lösen, wobei das vermutlich nicht so elegant ist wie direkt in das Script einzubauen. Bei Punkt 2 fehlt mir jede Idee wie ich das angehen kann.
zu 1. In der Anlage ein Makro für die zusätzliche Liste. a) Es benötigt eine zusätzliche benannte Zelle "AusgabeKleiner" b) Wenn du dieses Makro nicht mit den bisherigen über Aufrufe verbindest, must du zwar zweimal klicken um aus einer neuen Datei die Liste zu erstellen, aber wenn nur der Sollwert geändert wird, muss du die Daten nicht neu einlesen und die Matrix erstellen.
zu 2. Wenn ich dich richtig verstanden habe würde ich bei Tante Google nach "Excel Fadenkreuz" fragen.
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:1 Nutzer sagt Danke an Ego für diesen Beitrag 28 • grijo