Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1012to1016
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
Zeilen mit Makro aus Mustertabelle kopieren
26.09.2008 16:29:07
obelix-xxl
Hallo,
ich wende mich an dieses Forum mit der Bitte eine Makrolösung aufzuzeigen.
Udo hat mir gestern eine Lösung zum Kopieren von Zeilen hier ins Forum gestellt. Diese ist auch so genau richtig.
Nachdem ich diese nun einsetzen kann, benötige ich eine weiteres Kopiermakro.
In meinen Tabellenblatt "xyz" habe ich in den Zeilen 6 bis 15 meine "Vorlage" entwickelt. Diese Zeilen möchte ich mit einem Makro in jedem Tabellenblatt der Arbeitsmappe mit STRG + C einsetzen können. Eine Spaltenbreite ist dabei nicht zu beachten.
So kann ich einen "Stammsatz" in der Tabelle xyz in den Zeilen 6-15 entwickeln und diesen Stammsatz beliebig oft im benötigten Tabellenblatt einfügen.
Über eine weitere Unterstützung eines VBA-Laien würde ich mich freuen.
Recht herzlichen Dank.
Liebe Grüsse
obelix

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

Betreff
Datum
Anwender
Anzeige
AW: Zeilen mit Makro aus Mustertabelle kopieren
27.09.2008 11:49:00
obelix-xxl
Hallo nochmals,
hier ein Lösungsansatz von Martin Beck.
Dieser erfüllt aber nicht die von mir gedachte Aufgabenstellung.

Sub Kopieren()
Set cpy = Worksheets("Tabelle3").Range("A2:D50")
z = cpy.Rows.Count - 1
Rows("30:" & 30 + z).EntireRow.Insert
cpy.Copy Destination:=Worksheets("Tabelle4").Range("A30")
End Sub


Kann man diese Makro meine Bedürfnissen anpassen?
Recht herzlichen Dank für Eure Unterstützung.
Liebe Grüsse
obelix

AW: Zeilen mit Makro aus Mustertabelle kopieren
27.09.2008 11:50:17
obelix-xxl
Hallo,
nachdem ich sehr viele bereits beschriebene Makros hier im Forum zum Thema "Zeilen kopieren" gefunden und getestet habe, bitte ich nochmals um Unterstützung.
Letztendlich habe ich keine Lösung nutzen können.
In der Tabelle "Vorlage" möchte ich per Makro die Zeilen 6 bis 11 mit einem Makro in die Zeile einer anderen Tabelle "Neu" der Arbeitsmappe kopieren. In der Tabelle Neu sollen die Zeilen 6 bis 11 in die Zeilenposition, in der eine Zelle markiert ist, kopiert werden.
Wie gesagt gesucht, aber nichts passendes gefunden.
Gerne nehme ich Eure Tipps an.
Liebe Grüsse
obelix
Anzeige
AW: Zeilen mit Makro aus Mustertabelle kopieren
27.09.2008 17:33:17
obelix-xxl
Hallo,
nun habe ich eine Teillösung hier im Forum gefunden:

Sub BereichKopieren()
Dim ws As Worksheet, wsZ As Worksheet, efz%
Set ws = ThisWorkbook.Worksheets("Vorlage")
Set wsZ = Workbooks("Raumkosten.xls").Worksheets("Zieltabelle")
efz = wsZ.Cells(Rows.Count, 1).End(xlUp).Row + 1
ws.Rows("7:15").Copy wsZ.Cells(efz, 1)
End Sub


Ich möchte allerdings dieses vorstehnde Makro so nutzen können, dass zwei Abfragen erscheinen:
1. der Speichernamen der Exceldatei = Workbooks hier im Makro "Raumbuch.xls" bereits in der Abfrage steht, aber editiert werden kann.
2. der Name des Worksheets ("Zieltabelle") ebenso abgefragt wird und beim nächsten Start des Makros editiert werden kann.
Leider fehlen mir die VBA Kenntnisse um dieses Makro anpassen zu können.
Daher bitte ich um Eure Hilfe.
Liebe Grüsse
obelix

Anzeige
AW: Zeilen mit Makro aus Mustertabelle kopieren
28.09.2008 23:38:06
Daniel
Hi
so vielleicht

Sub BereichKopieren()
Dim Datei As String
Dim Tabelle As String
Dim ws As Worksheet, wsZ As Worksheet, efz%
Datei = InputBox("Bitte Datei eingeben", , "Raumkosten.xls")
Tabelle = InputBox("Bitte Tabellenblatt eingeben", , "Zieltabelle")
Set ws = ThisWorkbook.Worksheets("Vorlage")
Set wsZ = Workbooks(Datei).Worksheets(Tabelle)
efz = wsZ.Cells(Rows.Count, 1).End(xlUp).Row + 1
ws.Rows("7:15").Copy wsZ.Cells(efz, 1)
End Sub


allerdings ohne jegliche Fehlerprüfung, dh. bei Tippfehlern gibts nen Programmabbruch
Gruß, Daniel

Anzeige
AW: Zeilen mit Makro aus Mustertabelle kopieren
29.09.2008 19:53:00
obelix-xxl
Hallo Daniel,
recht herzlichen Dank für Deine schnelle Hilfe.
Das Makro funktioniert soweit prima.
Allerding habe ich noch ein kleines Problem bei der Eingabe der "Zieldatei" um den Bedienkomfort zu erhöhen.
Hier möchte ich gerne den zuvor editierten Tabellenblattnamen stehen haben um nicht immer wieder den erscheinenden Tabellennamen "Zieltabelle" überschreiben zu müssen.
Tabelle = InputBox("Bitte Tabellenblatt eingeben", , "Zieltabelle")
Hier ist beim ersten Durchlauf der Tabellenname Zieltabelle vorgegeben und erscheint weiterhin bei jedem Aufruf des Makros. Und nicht wie gewünscht der zuletzt eingegebene Tabellenblattname.
Hast Du, oder jemand anders, dafür eine Lösung?
Liebe Grüsse
obelix
Anzeige
AW: Zeilen mit Makro aus Mustertabelle kopieren
29.09.2008 22:34:17
Daniel
Hi
da du das Makro nicht so einfach durch sich selbst abändern lassen kannst, musst du halt den Textwert in einer freien Zelle zwischenspeichern:

Sub BereichKopieren()
Dim Datei As String
Dim Tabelle As String
Dim ws As Worksheet, wsZ As Worksheet, efz%
Datei = InputBox("Bitte Datei eingeben", , Sheets("Tabelle1").Cells(1,1).value)
Sheets("Tabelle1").Cells(1,1).value = Datei
Tabelle = InputBox("Bitte Tabellenblatt eingeben", , Sheets("Tabelle1").cells(2,1).value)
Sheets("Tabelle1").cells(2,1).value = Tabelle
Set ws = ThisWorkbook.Worksheets("Vorlage")
Set wsZ = Workbooks(Datei).Worksheets(Tabelle)
efz = wsZ.Cells(Rows.Count, 1).End(xlUp).Row + 1
ws.Rows("7:15").Copy wsZ.Cells(efz, 1)
End Sub


im obigen Beispiel werden die eingegebenen Werte auf dem Blatt Tabelle 1 in den Zellen A1 und A2 abgelegt und stehen so beim nächsten Makro-aufruf wieder zur Verfügung.
Tabellenblatt und Zellbezug kannst du ja nach deinen Anforderungen noch ändern.
Gruß, Daniel

Anzeige
AW: Zeilen mit Makro aus Mustertabelle kopieren
30.09.2008 07:58:14
Hubert
Hallo Daniel,
danke für Deine Unterstützung. Ich habe auch durch Deine Erklärung noch etwas dazu gelernt.
Hier nun das Makro, wie ich es soeben als für mich passend geändert habe.
Auf die Eingabe des Dateinamens habe ich allerdings verzichtet, werde diesen Makroteil aber in einer anderen Datei nutzen.

Sub BereichKopieren()
Dim Tabelle As String
Dim ws As Worksheet, wsZ As Worksheet, efz%
Tabelle = InputBox("Bitte Tabellenblatt eingeben", , Sheets("Tabelle1").cells(2,1).value)
Sheets("Tabelle1").cells(2,1).value = Tabelle
Set ws = ThisWorkbook.Worksheets("Vorlage")
Set wsZ = Workbooks(Datei).Worksheets(Tabelle)
efz = wsZ.Cells(Rows.Count, 1).End(xlUp).Row + 1
ws.Rows("7:15").Copy wsZ.Cells(efz, 1)
End Sub


Die Tabellenblattnamen habe ich mir passend gemacht.
So klappt es wunschgemäß.
An dieser Stelle noch einen großen Dank an Herbers Excel-Forum.
Liebe Grüße
obelix

Anzeige
AW: Zeilen mit Makro aus Mustertabelle kopieren
30.09.2008 21:56:21
Daniel
Hi
danke für die Rückmeldung, aber wenn aus Obelix plötzlich Hubert wird, bin ich etwas verwirrt.
Gruß, Daniel
AW: Zeilen mit Makro aus Mustertabelle kopieren
02.10.2008 19:35:57
obelix-xxl
Hallo, ich muss noch noch einmal wegen Unterstützung an das Forum wenden.
Nachfolgendes Makro zum Kopieren eines Zeilenbereiches von einer "Vorlage" in ein anderes Tabellenblatt derselben Arbeitsmappe habe ich eingesetzt.

Sub BereichKopieren()
Dim Datei As String
Dim Tabelle As String
Dim ws As Worksheet, wsZ As Worksheet, efz%
Datei = InputBox("Bitte Datei eingeben", , Sheets("Projektdaten").Cells(1, 1).Value)
Sheets("Projektdaten").Cells(1, 1).Value = Datei
Tabelle = InputBox("Bitte Tabellenblatt eingeben", , Sheets("T").Cells(2, 1).Value)
Sheets("Tabelle1").Cells(2, 1).Value = Tabelle
Set ws = ThisWorkbook.Worksheets("Vorlage")
Set wsZ = Workbooks(Datei).Worksheets(Tabelle)
efz = wsZ.Cells(Rows.Count, 1).End(xlUp).Row + 1
ws.Rows("7:15").Copy wsZ.Cells(efz, 1)
End Sub


Diese Makro läuft aus welchen Grund auch immer, nicht ganz so wie ich es schon einmal hatte.
Die Abfrage nach der aktuellen Datei benötige ich nicht mehr.
Die Abfrage nach dem Tabellenblatt in dem die Zeilen aus der Vorlage eingefügt werden sollen, ist schon richtig. Allerdings möchte ich den zuletzt eingegebenen Tabellenblattnamen erst dann überschreiben , wenn ich ein anderes Tabellblatt angelegt habe. Solange kann der Tabellenblattnamen ohne editieren zu müssen in der Abfrage stehen bleiben.
Ich habe jetzt ohne VBA-Kenntnisse viel ausprobiert, komme aber nicht weiter.
Ich hoffe mir kann in diesem Forum Hilfe geboten werden.
Liebe Grüsse
obelix

Anzeige

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige