Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

DAten von einem WB in ein identisches kopieren
#1
Hallo,

wegen neuer Berechnung von Daten, mit neuen Formeln, muß ich monatlich, für einige Monate, Daten dem WB Source mit den alten Formeln in das Wb Destination mit neuen Formeln kopieren.
Da es sich um insgesamt 120 Blätter pro Monat handelt, was manuell sehr zeitraubend und mühselig wäre, drängt eine Lösung per VBA sich auf.

Die Struktur ist die gleiche: die Daten von F5:AC66 müssen kopiert werden.

Ausser dem Kopieren der Daten muss die Makro für jedes Blatt aus Source ein Blatt in Destination machen, und den Blattnamen in die Zelle U1 jedes Blattes einfügen.
Es sollen alle Blätter kopiert werden ausser 3: von DoNotCopy 1 bis 3.

Wie müsste der Code aussehen, der dieser Aufgabe gerecht werden würde?

Mit freundlichen Grüßen
Alooha


Angehängte Dateien
.xlsx   Source.xlsx (Größe: 58,87 KB / Downloads: 2)
.xlsx   Destination.xlsx (Größe: 13,56 KB / Downloads: 2)
Antworten Top
#2
Hallo Aloha,

das klingt für mich nach Auftragsporgrammierung.

Vorschlag von mir:
Mach es selbst, du hast in dem Forum schon so viel gelernt.
Wenn es irgendwo hakt, dann stelle deine Fragen.

Viel Erfolg
Antworten Top
#3
Hallo Wastl,
es ist so, dass ich das freiwillig mache für eine uneigennützige Stiftung.
So viel, was VBA anbelangt, habe ich nicht gelernt.
Ok, ich versuche mal mein Glück und melde mich.
Mit freundlichen Grüßen
Alooha
Antworten Top
#4
Hallo Alooha

warum willst du alles kopieren, du must ja wahrscheinlich auch neue Blaetter anlegen.  Kopiere doch das ganze Blatt von der Source in Destination.  Wenn du das mit dem Makro Recorder aufzeichnest und eine For Next Schleife bastelst geht das in Sekunden.

mfg  Gast 123
Antworten Top
#5
Hallo "Gast 23";

es ist so, dass ich in allen Blättern, in den alten wie den neuen, so wie im Beispiel ersichtlich, links einen Bereich habe wo Daten eingegeben werden (natürlich ganz andere als diese fiktiven), und rechts den Bereich wo die Daten verarbeitet werden. Da im neuen Blatt ein Teil der Berechnungen geändert hat, im Vergleich zum alten, ist es das einfachste, alle eingegebenen Daten von den alten in die neuen zu kopieren; es müssen auch neue Blätter angelegt werden

Ich habe schon eine Makro, das etwas ähnliches macht, aber, da das sehr(für mich jedenfalls) kompliziert auf gebaut ist, bin ich nicht imstande, es einfach als Basis zu nehmen.
Ich werde jetzt mal beginnen, selbst etwas zu basteln und sehen, wie weit ich komme.

Mit freundlichen Grüßen
Alooha
Antworten Top
#6
Hallo Alloha

okay, mein Vorschlag, fang mal an zu basteln, stelle es ins Forum, und beschreibe wie weit du gekommen bist.  Denke nicht du waerest dumm wenn es nicht klappt.  Unser Gehirn lernt am schnellsten durch Versuch und Irrtum.  Du kannst auch nicht Autofahren nur durch Theorie erlernen, du must das Steuer selbst in die Hand nehmen.  Das die ersten Fahrversuche nicht die besten sind ist jedem bekannt.  Wichtig ist damit anzufangen, es wenigstens zu probieren!!

In diesem Sinne, stelle uns deinen Code vor, dann helfen wir dir weiter ....

mfg  Gast 123
Antworten Top
#7
Hallo "Gast 123",

besten Dank für das freundliche und wohl auch pädagogisch ziemlich wertvolle Angebot!
Dann wollen wir mal!
Bis später
mit meinem wohl ziemlich mickrigen Code Dodgy

Alooha
Antworten Top
#8
Hallo,

ich habe jetzt die Kopieraktion für eine Datei und ein Blatt aufgezeichnet.

Was da noch fehlt:

* alle Dateien in "ToBeCopied" eine nach der anderen öffnen und mit allen die selbe Prozedur durchführen
* den Kopiervorgang für alle Blätter in den Dateien durchführen
das bedingt dass für jedes Sheet in den Quelldateien, aus dem Modellsheet in "Destination" eine Kopie angefertigt wird, ihr der Namen des Quellsheet's gegeben wir, dann die Daten kopiert werden


Leider weiss ich nicht wie vorgehen, um alle WBs in "ToBeCopied" zu kopieren und aus jedem Wb alle Sheets (ausser den 3) zu kopieren. Das kriege ich leider nicht hin.

Mit freundlichen Grüßen
Alooha


Angehängte Dateien
.xlsm   WB with macros1.xlsm (Größe: 16,85 KB / Downloads: 2)
Antworten Top
#9
Hallo Alloha

anbei deine Beispieldatei mit überarbeitetem Code zurück.  Dein Code habe ich in Modul1 Original gelassen.
Für Kollegen die keine xlsm Dateien öffnen eine xlsx Version, Makros sind in der Tabellle.

Die Version öffnet Source und Destination, aber weil sich der Pfad, Ordner oder Datei Name ja aendern kann, man nicht jedesmal das Makro wieder umschreiben muss, habe ich alle wichtigen Daten in Eingabezellen gelegt.  Dort kannst du sie jederzeit aendern.

Wie gefaellt dir meine Version.  Einen Teil habe ich von dir abgeguckt!  Deine Ideen waren nicht schlecht, alle Achtung!!  Und da du selbst VBA lernen willst kannst du dir meinen Code in Ruhe ansehen.  Er ist ja kein Geheimnis.  Bin gespannt auf deine Rückmeldung.

mfg Gast 123


Angehängte Dateien
.xlsm   WB with macros F.xlsm (Größe: 22,95 KB / Downloads: 5)
.xlsx   WB with macros Fx.xlsx (Größe: 13,77 KB / Downloads: 0)
Antworten Top
#10
Hallo "Gast 123",

vielen Dank, er sieht gut und professionell aus, aber er bleibt leider hängen, nachdem die WBs schon geöffnet sind und gibt die von dir vorgesehene Fehlermeldung aus, aber ich kann nicht verstehen, was dann noch geöffnet werden soll.
Die Blätter die nicht kopiert werden sollen, heissen in Wirklichkeit anders (Résumé, Tableau, Codes) und die von dir angewandte Methode funktioniert nicht in dem Fall. Ich hatte nicht an solch eine Lösung gedacht, sonst hätte ich sie anders genannt.
Ungewöhnlich scheint mir zu sein (weil ich das noch nie gesehen habe), dass du den Pfad und die WB Namen in dem Sheet eingegeben hast. Ist der Zweck davon, dass ich auf diese Weise leicht andere Sheets bearbeiten kann?

Mit freundlichen Grüßen
Aloha
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste