Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1308to1312
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro Datei öffnen und Daten pasten

Makro Datei öffnen und Daten pasten
11.04.2013 10:12:31
Enrico
Hallo Forum,
Ich möchte folgende Aufgabe lösen:
Ich habe eine Excel Mappe die jede Menge Berechnungen vornimmt. Die Ergebnisse möchte ich auch nach ändern der Eingangsdaten vergleichen können und druckbar dargestellt bekommen.
Ich möchte gerne ein Makro mit dem Namen PrintData erstellen, dass beim Ausführen eine neue Mappe öffnet und dann bestimmte Eingangs und Ausgangsdaten (meine Auswahl) in die neue Mappe kopiert. Jetzt möchte ich einige Eingangsdaten ändern und das Makro nochmals ausführen, jetzt sollen die ausgewählten Daten zum Vergleich jedoch in die Spalte daneben kopiert werden, dass muss solange funktionieren bis die zuvor automatisch geöffnete Mappe geschlossen wird.
Jetzt die schlechte Nachricht, ich weiß nicht wie ich das anstellen soll! :-(
besten Dank für eure Hilfe

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro Datei öffnen und Daten pasten
11.04.2013 10:18:19
Hajo_Zi
warum andere Datei? kopiere die Werte doch gleich in die Spalte daneben.
Gruß Hajo

AW: Makro Datei öffnen und Daten pasten
11.04.2013 10:20:28
Klaus
ich möchte gerne ein Makro mit dem Namen PrintData erstellen
einfach.
dass beim Ausführen eine neue Mappe öffnet
eine ganz neue Mappe oder nur ein neues Arbeitsblatt? da du untern "Mappe schließen" schreibst, nehme ich an du meinst wirklich eine Mappe. Wird diese nach Nutzung gelöscht?
und dann bestimmte Eingangs und Ausgangsdaten (meine Auswahl) in die neue Mappe kopiert.
wie sieht deine Auswahl denn aus? Eigentlich dürfte die sich ja von Ausführung zu Ausführung nicht ändern, sonst bringt dir ja der Vergleich nichts.
Einfacher währe es, wenn du sagen kannst "immer Bereich B7:B100".
Lässt man es bei "Auswahl", gibt es ein dutzend Ausnahmen zu betrachten (was ist, wenn du alle Zellen auswählst? oder Zeilen statt Spalten? Oder ein Bild, oder einen Button?).
Jetzt möchte ich einige Eingangsdaten ändern und das Makro nochmals ausführen, jetzt sollen die ausgewählten Daten zum Vergleich jedoch in die Spalte daneben kopiert werden,
Muss es ZWINGEND das gleiche Makro nochmal sein, oder kannst du beim zweiten mal auch ein anderes Makro ausführen?
Ich mein, das geht schon mit einem Makro (Publich Boolean Variable beim ersten ausführen umschalten), halte ich aber für unnötig fehleranfällig und kompliziert.
dass muss solange funktionieren bis die zuvor automatisch geöffnete Mappe geschlossen wird.
Was passiert denn mit der "zuvor automatisch geöffneten" Mappe? Wird die gespeichert, oder einfach nur geschlossen?
Grüße,
Klaus M.vdT.

Anzeige
AW: Makro Datei öffnen und Daten pasten
11.04.2013 10:32:56
Klaus
Hi,
das könnte funktionieren.
Kopiert immer ganze Spalten zum vergleich.
Zeile 1 muss IMMER gefüllt sein, sonst funktioniert es nicht!
Wenn du die "neue" Datei schließt, musst du einmal das Makro "ResetFirstOpen" ausführen - oder die Masterdatei schließen und wieder öffnen.
Option Explicit
Public bFirstOpen As Boolean
Public wkbNew As Workbook
Sub PrintData()
Dim wkbOld As Workbook
Set wkbOld = ActiveWorkbook
If bFirstOpen Then
Else
Workbooks.Add
Set wkbNew = ActiveWorkbook
bFirstOpen = True
wkbOld.Activate
End If
Dim iCol As Integer
Selection.EntireColumn.Copy
With wkbNew.Sheets(1)
iCol = .Cells(1, .Columns.Count).End(xlToLeft).Column
.Cells(1, iCol + 1).PasteSpecial
End With
End Sub
Sub ResetFirstOpen()
bFirstOpen = False
End Sub

Anzeige
AW: Makro Datei öffnen und Daten pasten
11.04.2013 10:48:24
Enrico
Hallo Klaus,
1. Ja, eine ganz neue Mappe ist gemeint, da ich sozusagen ein Datei für Berechnungen und eine nur zur Datenausgabe und Vergleich haben möchte die ich dann abspeichern oder verwerfen kann, die aber nicht die ganzen Berechnungsformeln im Hintergrund hat.
2. Ja, immer der gleiche Bereich soll kopiert und eingefügt werden.
3. Es könnten auch 2 Mokros verwendet werden, ich dachte nur das die Lösung mit einem Makro die elegantere wäre.
4. Die Datei soll mit neuem Namen gespeichert und dann geschlossen werden oder auch einfach nur geschlossen.

Mein Beispielmakro ausprobiert? owT
11.04.2013 10:54:53
Klaus
.

Anzeige
AW: Mein Beispielmakro ausprobiert? owT
11.04.2013 10:57:56
Enrico
Hallo,
ich habe es gerade probiert und es funktioniert auch nur wird der kopierte Bereich immer wieder überschrieben und nicht in die Zelle daneben eingefügt.

AW: Mein Beispielmakro ausprobiert? owT
11.04.2013 11:01:33
Klaus
nur wird der kopierte Bereich immer wieder überschrieben und nicht in die Zelle daneben eingefügt.
Bei mir schon. Ich kann nur raten: Zeile 1 ist nicht gefüllt? Die erste freie Spalte wird in dieser Zeile ermittelt:
iCol = .Cells(1, .Columns.Count).End(xlToLeft).Column
die 1 steht hier für Zeile 1.
Entweder, du sorgst dafür dass Zeile 1 immer gefüllt ist, oder du änderst die 1 auf eine immer gefüllte Zeile ab (wenn du zB immer Daten in Zeile 17 stehen hast, dann so:
iCol = .Cells(17, .Columns.Count).End(xlToLeft).Column
Grüße,
Klaus M.vdT.

Anzeige
AW: Mein Beispielmakro ausprobiert? owT
11.04.2013 11:31:02
Enrico
Hey,
So, jetzt habe ich es fast verstanden!!
Das Problem ist jetzt nur noch, dass das Markro die Spalte kopiert in der gerade eine Zelle aktiviert ist. Ich denke es wäre Gut, wenn man das über Bereiche lösen könnte, da die Eingangs,- und Ausgangsdaten ohnehin in verschiedenen Spalten stehen.
bis dahin vielen Dank
Gruß

AW: Mein Beispielmakro ausprobiert? owT
11.04.2013 11:37:10
Klaus
Das Problem ist jetzt nur noch, dass das Markro die Spalte kopiert in der gerade eine Zelle aktiviert ist. Ich denke es wäre Gut, wenn man das über Bereiche lösen könnte, da die Eingangs,- und Ausgangsdaten ohnehin in verschiedenen Spalten stehen.
Ja, das sehe ich genauso. Dann lös es doch bitte anders.
Da ich deinen Tabellenaufbau ja nicht kenne, kann ich dir dabei leider nicht helfen. Nur soweit:
Selection.EntireColumn.Copy
kopiert die Spalte der ausgewählten Zeile. Hier musst du halt ändern, in sinngemäß
meinausgewählterbereich.Copy
Grüße,
Klaus M.vdT.
Anzeige

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige