Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Makro mit Zwischenablage erstellen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Makro mit Zwischenablage erstellen (728 mal gelesen)
B3nnoB87
Mitglied
Konstrukteur


Sehen Sie sich das Profil von B3nnoB87 an!   Senden Sie eine Private Message an B3nnoB87  Schreiben Sie einen Gästebucheintrag für B3nnoB87

Beiträge: 45
Registriert: 14.04.2015

Intel Xeon CPU E5-1620
16GB Ram
NVIDIA Quadro K4200
-
AutoCAD 2014
Inventor 2014

erstellt am: 26. Apr. 2017 15:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
Ich möchte ein Makro erstellen das mir etwas um den wert "x,y" via -pan versetzt.
Dafür brauche ich aber immer wieder neue Werte.
Jetzt ist meine frage, kann ich ein Makro erstellen das sich diese Werte aus dem Zwischenspeicher holt?
z.Z.
0,500 -> mit strg+c in den Zwischenspeicher laden
Makro:
c^c^-pan;0,0;<Zwischenspeicher>;

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KlaK
Ehrenmitglied V.I.P. h.c.
Dipl. Ing. Vermessung, CAD- und Netz-Admin



Sehen Sie sich das Profil von KlaK an!   Senden Sie eine Private Message an KlaK  Schreiben Sie einen Gästebucheintrag für KlaK

Beiträge: 2624
Registriert: 02.05.2006

AutoCAD LandDesktop R2 bis 2004
Civil 3D 2005 - 2022
Bricscad V11-V21 pro
Plateia, Canalis
Visual Basic

erstellt am: 26. Apr. 2017 16:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Hallo,
Dein Makro sieht etwas komisch aus, da ist Dir wohl ein Tipfehler unterlaufen.

Theoretisch sollte es so gehen:
^C^C_pan;0,0;\

Durch den \ wird eine Eingabe erwartet. Wenn Du den Wert mit Strg+C in den Zwischenspeicher geholt hast, könntest Du jetzt mit Strg-V den Wert in die Befehlszeile eintragen lassen

Grüße
Klaus   

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

B3nnoB87
Mitglied
Konstrukteur


Sehen Sie sich das Profil von B3nnoB87 an!   Senden Sie eine Private Message an B3nnoB87  Schreiben Sie einen Gästebucheintrag für B3nnoB87

Beiträge: 45
Registriert: 14.04.2015

Intel Xeon CPU E5-1620
16GB Ram
NVIDIA Quadro K4200
-
AutoCAD 2014
Inventor 2014

erstellt am: 26. Apr. 2017 16:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von KlaK:
Hallo,
Dein Makro sieht etwas komisch aus, da ist Dir wohl ein Tipfehler unterlaufen.

Theoretisch sollte es so gehen:
^C^C_pan;0,0;\

Durch den \ wird eine Eingabe erwartet. Wenn Du den Wert mit Strg+C in den Zwischenspeicher geholt hast, könntest Du jetzt mit Strg-V den Wert in die Befehlszeile eintragen lassen

Grüße
Klaus    



Die Befehlszeile wollte ich eben nicht benutzen, sondern mit dem Zwischenspeicher auslesen den vorgang automatisieren.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 26. Apr. 2017 16:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Hört sich verrückt an. Bitte erkläre doch was deine Zeichnung darstellt und warum/woher die Daten in der Excelliste kommen? Interessant..

Einfügen in den Zeichnungsbereich geht einfach: _PASTECLIP,
Aber man kann im Makro nicht angeben "einfügen in die Befehlszeile", das geht nicht m.M.nach.

Wenn du Excel hast, dann lasse dir doch lieber von Excel das komplette Makro erstellen (mit Formel "Verketten")

in dem Fall geht jedoch kein Makro, sondern nur die SCRIPT-Schreibweise
=VERKETTEN("'-PAN 0,0 ";C6)
entspricht
'-PAN 0,0 20,0

siehe auch User FAQ

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 26. Apr. 2017 16:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Nach den zwischenzeitlichen Antworten hier noch eine Ergänzung, zur Sicherheit.

In Excel markierst du dann die Zelle mit der Formel welche die Scriptfolge darstellt, dann Strg+C und in Acad Strg+V IN DIE BEFEHLSZEILE

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Prisoner
Mitglied
Bauingenieur


Sehen Sie sich das Profil von Prisoner an!   Senden Sie eine Private Message an Prisoner  Schreiben Sie einen Gästebucheintrag für Prisoner

Beiträge: 101
Registriert: 28.08.2007

Windows 7 Pro 64bit,
HP Workstation Z420,
AMD Firepro V4900,
AutoCAD 2017

erstellt am: 26. Apr. 2017 16:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Die Library DOSLIB (siehe Link) enthält u.a. Copy/Paste-Funktionen:

Also:
^C^C_pan;0,0;(dos_clipboard)

Sollte funktionieren.

PS: die Copy-Funktion wäre in Deinem Fall:
(dos_clipboard "0.5")
Kann man auch in ein Makro einbauen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KlaK
Ehrenmitglied V.I.P. h.c.
Dipl. Ing. Vermessung, CAD- und Netz-Admin



Sehen Sie sich das Profil von KlaK an!   Senden Sie eine Private Message an KlaK  Schreiben Sie einen Gästebucheintrag für KlaK

Beiträge: 2624
Registriert: 02.05.2006

AutoCAD LandDesktop R2 bis 2004
Civil 3D 2005 - 2022
Bricscad V11-V21 pro
Plateia, Canalis
Visual Basic

erstellt am: 26. Apr. 2017 16:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Excel? davon war doch nie die Rede ??
Denke es geht B3nnoB87 nur darum die Ansicht um eine definierte Schrittweite zu verschieben (pan)

Wäre es hier nicht sinnvoll einfach die Seitenbalken einzublenden und dort zu scrollen?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 26. Apr. 2017 17:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von KlaK:
Excel? davon war doch nie die Rede ??
SORRY, hast ja recht. Keine Ahnung wie ich auf dieses schmale Brett kam, naja - zumindest FAST nicht.


Denke es geht B3nnoB87 nur darum die Ansicht um eine definierte Schrittweite zu verschieben (pan)
Da er den Verschiebewert aber in der Zwischenablage hat(?) muß der Wert ja irgendwo herkommen und da ist
Excel recht naheliegend, daher wohl meine ANNAHME.
Das ganze macht auch nur wirklich Sinn wenn man immer unterschiedliche Werte (in der Zwischenablage) hat.

Nur mir fällt spontan kein realistisches Szenario ein wann und warum man diese Anforderung haben könnte,
dies interessiert mich sehr.



------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

B3nnoB87
Mitglied
Konstrukteur


Sehen Sie sich das Profil von B3nnoB87 an!   Senden Sie eine Private Message an B3nnoB87  Schreiben Sie einen Gästebucheintrag für B3nnoB87

Beiträge: 45
Registriert: 14.04.2015

Intel Xeon CPU E5-1620
16GB Ram
NVIDIA Quadro K4200
-
AutoCAD 2014
Inventor 2014

erstellt am: 27. Apr. 2017 07:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Mein Ziel war es ein Layout zu kopieren mit dem Zeichnungskopf, dem Rahmen und allen Ansichtsfenster und dann in der Kopie alle Inhalte in den Ansichtsfenster um x,y zu versetzten (pan).
Mach ich das jetzt händisch stimmen Schnitte nicht mehr überein.
Mach ich das über die Befehlszeile kann ich gleich neue Fenster setzen weil die eingabe zu viele Schritte benötigt.
Bis jetzt sieht der ABlauf so aus:
- Klick ins fenster
- Entsperren
- Makro: ^c^c-pan;0,0;
- strg+c in Befehlszeile
- Ansichtsfenster wieder schließen

Das sind einfach zu viele Schritte 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 27. Apr. 2017 08:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Ahhhhh. Ja an die Situation hatte ich gestern nicht gedacht.

"Klick ins fenster
- Entsperren
- Makro: ^c^c-pan;0,0;
- strg+c in Befehlszeile
- Ansichtsfenster wieder schließen"

Also wenn du cleverer Weise das Fenster entsperrst und erst hinterher alle auf einmal wieder sperrst, dann fallen schon mal zwei Schritte weg(das wieder-sperren hast du vermutlich nur vergessen zu schreiben, oder?)

Wenn ich dann deine Beschreibung weiter betrachte ist es genau EIN KLICK um ALLE Layouts auf einmal zu erstellen - komplett als Script wie oben dargestellt.
Für alle diese Schritte gibt es doch Autocadbefehle, schau mal in das Textfenster wenn du einem Ablauf durchgeführt hast.
Oder direkt beim arbeiten, einfach eine ordentliche Anzahl an Zeilen für die Befehlszeile wählen(4).


------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 27. Apr. 2017 09:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Falls mehrere Ansichtsfenster eines Layouts neu eingestellt werden müssen, dann geht das nicht mehr ohne Programmierung.
Alleine mit Acadbefehlen würde man nur Eines pro Layout automatisch einstellen könne.

Die Sache ging noch nicht ganz eindeutig aus der Beschreibung hervor.

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Prisoner
Mitglied
Bauingenieur


Sehen Sie sich das Profil von Prisoner an!   Senden Sie eine Private Message an Prisoner  Schreiben Sie einen Gästebucheintrag für Prisoner

Beiträge: 101
Registriert: 28.08.2007

Windows 7 Pro 64bit,
HP Workstation Z420,
AMD Firepro V4900,
AutoCAD 2017

erstellt am: 27. Apr. 2017 11:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

Zitat:
- Klick ins fenster
- Entsperren
- Makro: ^c^c-pan;0,0;
- strg+c in Befehlszeile
- Ansichtsfenster wieder schließen

Das ist mir auch noch nicht ganz klar_
- Woher holst Du den Wert im Zwischenspeicher?
- Anstelle "strg+c" müsste doch in Deinem Ablauf eigentlich "strg+v" stehen,
  da der Wert zu diesem Zeitpunkt schon im Zwischenspeicher sein sollte?

Abgesehen davon: In meinem obigen Beitrag funktioniert übrigens wenigstens der Teil mit dem pan-Makro und
dem automatischen Auslesen des Zwischenspeichers sehr gut (getestet).
Versuchs mal:
-doslibxxx.arx laden
-dann (Button- oder Hotkey-)Makro ausführen, um einen Wert aus dem (vorhandenen!) Zwischenspeicher
im Makro zu benutzen (in deinem Fall z.Z. "0,500"):
^c^c-pan;0,0;(dos_clipboard)

Um den Ansatz von cadffm aufzunehmen und viele Ansichtsfenster auf einmal zu entsperren,
und dann nacheinander um einen Zwischenspeicher-Wert zu verschieben und wieder zu sperren,
wäre folgendes denkbar:
Beispiel: Es sind 3 gesperrte Afenster vorhanden und folgende Makros auf jew. Hotkeys gelegt:
Strg+1= -afenster;r;a;v;;
Strg+2= -afenster;r;e;v;;
Strg+3= -pan;0,0;(dos_clipboard)

1. Ohne Befehl alle 3 Afenster selektieren und Strg+1 (=alle gewählten Entsperren)
2. Doppelklick in irgendein Afenster und folgendes ausführen: Strg+3, Strg+r, Strg+3, Strg+r, Strg+3
3. Afenster durch Doppelklick außerhalb deaktivieren, um in den Papierbereich zurückzukehren
4. wie Schritt 1 aber Strg+2 (=alle wieder Sperren).

Also mehrere Afenster auf einmal entsperrt, verschoben und wieder gesperrt mit gefühlten 5 Maus - und Tastenanschlägen.
Ist das ein erster Ansatz für einen gangbaren Weg ohne Programmierung?

Grüße
Anselm

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 27. Apr. 2017 12:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für B3nnoB87 10 Unities + Antwort hilfreich

@Prisoner
Das Sperren/Entsperren kann man doch komplett weglassen,
vorher entsperren, dann die Layout vervielfältigt und hinterher wieder sperren, einmal für alle AF der Datei.


@All
Kleine Änderung meiner Aussage: Auch die Ansicht von mehreren AF geht mit einem Makro/ohne Programmierung
Das Steuerzeichen ^V wechselt zwischen den Fenstern.

@TO
Überlegst du, brauchst du Hilfestellung oder hast es mittlerweile per Hand gelöst?
Ich hänge später mal ein Beispiel an falls keine Antwort mehr kommt.

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz