Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Excel
  Makro zum Kopieren von Dokument zu Dokument

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
Autor Thema:  Makro zum Kopieren von Dokument zu Dokument (1714 mal gelesen)
moppesle
Ehrenmitglied V.I.P. h.c.
Konstrukteur


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

Beiträge: 3418
Registriert: 28.05.2009

CATIA V5 R19 SP9
WIN 7 64bit

erstellt am: 25. Nov. 2011 09:42    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 zusammen,

ich bewege mich normalerweise in CAD-Bereich, habe leider sehr eingeschränkte Programmierkenntnisse.

Um von einer bestehenden Stückliste in eine andere Stückliste die Daten zu kopieren suche ich ein Makro oder ähnliches mit dem man das automatisieren kann.

Hat vieleicht jemand ne Idee oder besser noch ein Makro das ich mir evt. anpassen kann.

Gruß Uwe

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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 25. Nov. 2011 10: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 moppesle 10 Unities + Antwort hilfreich

STRG+C > STRG+V = Makro genug?

(soll heissen: Was willst du machen, dass du ein Makro brauchst, das genauso viel Aufwand ist?)

------------------
Grüsse

Thomas

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

startrek
Moderator
Architekt


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

Beiträge: 1361
Registriert: 13.02.2003

.

erstellt am: 25. Nov. 2011 11: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 moppesle 10 Unities + Antwort hilfreich

Hi Uwe,

allgemeine Frage - allgemeine Antwort;-)
So bekommst du zB. die Zellen A1-A3 aus Mappe1(Tabelle1) in Mappe2(Tabelle1) kopiert:

Code:
Sub Makro1()
  ActiveWorkbook.Sheets("Tabelle1").Range("A1:A3").Copy _
  (Workbooks("Mappe2.xls").Sheets("Tabelle1").Range("A1"))
End Sub

HTHHope this helps (Hoffe, es hilft weiter) - ansonsten gib mal bisschen mehr Input ;-)

Gruß Nancy

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

moppesle
Ehrenmitglied V.I.P. h.c.
Konstrukteur


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

Beiträge: 3418
Registriert: 28.05.2009

CATIA V5 R19 SP9
WIN 7 64bit

erstellt am: 25. Nov. 2011 11:19    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


Liste.png


Zielliste.png

 
Hallo Thomas,

 

Zitat:
STRG+C > STRG+V = Makro genug?
so viel Makro kann und kenne ich auch  

Mein Problem ist, das ich für verschiedene Kunden verschiedene Stücklistenlayouts habe.
Die einzelnen Werte die zu kopieren sind stehen nicht immer in der selben Spalte, Zeile,(Zelle?)

Wenn nun ein Wert (z.B. Projektnummer) in der Ausgangsstückliste (siehe Bild Liste) in D3 steht so muß dieser in der Zielstückliste auf z.B. E1 (Bild Zielliste) stehen.
Das selbe gilt für die einzelnen Positionen die Spaltenweise abgearbeitet werden müssen und auch unterschiedliche Ursprünge haben.

Hoffe es ist verständlich erklärt.

Gruß Uwe

[Diese Nachricht wurde von moppesle am 25. Nov. 2011 editiert.]

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

Paulchen
Mitglied
Bauing./SW-Entwickler


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

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 25. Nov. 2011 11:40    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 moppesle 10 Unities + Antwort hilfreich

Hi moppesle,

vorab: Eine Zelle ist der Schnittpunkt einer Zeile mit einer Spalte (ich hatte da eine versteckte Frage gewittert)  .

Gegenfragen ;-):

Automatisieren lässt sich das schon, fraglich ist: Wie viel ist denn gleich, also welche Bereiche in welchen Registern sind identisch? Sehen wenigstens die (Quell)Listen oder die Zielliste(n?) immer gleich aus? Gut, es ließe sich auch im Makro nach der Projektnummer suchen, aber da wird's dann echt wild, und Du bist mehr mit der Kontrolle des Makros beschäftigt, als es Dir nutzt...

Können sich die Quell- und/oder Zielbereiche ändern? Dann wird die Pflege schwierig, weil ein "Range("A1:A3")..." möglicherweise so nicht mehr stimmt.

Von wie vielen Kopiervorgängen sprechen wir?

Vermutlich wird hier keiner eine vorgefertigte Musterlösung liefern; deshalb ein Vorschlag: Schmeiß' mal den Makro-Recorder an, und poste hier. Oder Dummy-Mappe.

------------------
DIN1055.de  |  Lastannahmen für Anwender

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

startrek
Moderator
Architekt


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

Beiträge: 1361
Registriert: 13.02.2003

.

erstellt am: 25. Nov. 2011 11:54    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 moppesle 10 Unities + Antwort hilfreich

Vielleicht noch ergänzend zu Paulchen,
zumindest was die Listennummer/Bennennung angeht, könnte man da evtl. mit Namen arbeiten, zB so in der Art:

Code:
ActiveWorkbook.Sheets("Tabelle1").Range("Listennummer").Copy _
  (Workbooks("Mappe2.xls").Sheets("Tabelle1").Range("Benennung"))

Die Zelladresse kann hierbei dann variabel sein, Zielzelle ist immer die Zelle, auf die sich der Name bezieht.

Allerdings, die verbundenen Zellen sind IMHOIn my humble oppinion (Meiner Meinung nach) ein böses Foul, damit machst Du dir richtig das Leben schwer;-)
Auf die Zellverbände würde ich als erstes verzichten.

Gruß Nancy

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

moppesle
Ehrenmitglied V.I.P. h.c.
Konstrukteur


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

Beiträge: 3418
Registriert: 28.05.2009

CATIA V5 R19 SP9
WIN 7 64bit

erstellt am: 25. Nov. 2011 11:58    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 Paulchen,

Zitat:
Sehen wenigstens die (Quell)Listen oder die Zielliste(n?) immer gleich aus?

Ja zu meinem Glück :). Hoffe ich doch.:)

Zitat:
Können sich die Quell- und/oder Zielbereiche ändern?

Nein :) Das läst mich sehr offen, das ich mit meinen Programmierkennnisen (sehr schlecht)mir das Makro immer an die ensprechende Zieldatei einmal anpassen kann.

Zitat:
Von wie vielen Kopiervorgängen sprechen wir?

Situation ist folgende. Wir haben für unser CAD-System ein Makro, das uns die Positionen der Bauteile und die dazugehörigen Parameter wie Bezeichnung, Material,Abmaße,usw. in ein Excelsheet schreibt.Dieses Sheet sieht immer gleich aus.

Dies funktioniert sehr gut und lässt sich auch gut händeln.
Wenn nun eine Änderung im 3D gemacht wird, und eine Aktualisierung der Stückliste von Nöten ist muß diese wieder generiert werden.

Nun muß ich jedesmal die Werte aus der Queldatei in die Zieldatei kopieren.
Dies kommt dann bei verschiedenen Projekten mehrmals vor.

Gruß Uwe

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

Paulchen
Mitglied
Bauing./SW-Entwickler


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

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 25. Nov. 2011 12:32    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 moppesle 10 Unities + Antwort hilfreich

Na dann,

auf geht's  ! Makro-Rekorder anschmeißen, einen Kopiervorgang komplett vornehmen, Code hier rein. Einfacher wäre natürlich - wie oben angedeutet - eine (anonymisierte) Beispielmappe, die schon etwas Code enthält.

Wenn Du speziell irgendwo hängst, wird Dir hier sicherlich weitergeholfen. Den ersten Schritt hast Du bereits getan, Du beschäftigst Dich damit. Der zweite heißt: Loslegen.

Anmerkung: Vielleicht entdeckst Du, dass das mit Makros/VBA im vorliegenden Fall "Kanonen auf Spatzen" ist, und Copy+Paste ausreicht. Anderenfalls ist auch denkbar, dass Du "Blut leckst" und so richtig Spaß daran findest; ich hoffe auf Letzteres.

------------------
DIN1055.de  |  Lastannahmen für Anwender

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