Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1640to1644
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

Mehrere Zeile mit Formeln auf zwei Tabellen einfüg

Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
03.09.2018 10:18:02
Roger
Hallo zusammen,
Mit VBA hatte ich bis anhin noch nicht viel zu tun.
Daher hoffe ich, dass einer von euch, Profis mit weiterhelfen kann.
Das Script funktioniert bis jetzt (nur auf einem Tabellenblatt) gut.
Nun zu meinem Anliegen;
Ich möchte per Button mehrere Zeilen mit darin befindlichen Formeln auf Tabelle1 und zugleich auch auf Tabelle2 untereinander einfügen.
Ich habe euch mal den Script den ich bis jetzt verwende aufgeführt.
Könnt ihr mir sagen was ich noch falsch mache?
Schon jetzt danke ich euch für jeden Tipp.
Sub ZeilenEinfuegen ()
Dim Zeile As Long
Zeile = ActiveCell.Row
Sheets(Array("Tabelle1", "Tabelle2")).Select
Sheets("Tabelle1").Activate
Range(Rows(Zeile + 1), Rows(Zeile + 12)).Insert Shift:=xlDown
Range(Rows(Zeile), Rows(Zeile + 12)).FillDown
Sheets("Tabelle2").Select
End Sub

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
03.09.2018 15:21:27
Dieter
Hallo Roger,
das könnte folgendermaßen aussehen:
Sub ZeilenEinfuegen()
Dim i As Long
Dim ws As Worksheet
Dim zeile As Long
zeile = ActiveCell.Row
For i = 1 To 2
Set ws = ThisWorkbook.Worksheets("Tabelle" & i)
ws.Range(ws.Rows(zeile + 1), _
ws.Rows(zeile + 12)).Insert
ws.Rows(zeile).AutoFill Destination:=ws.Range(ws.Rows(zeile), _
ws.Rows(zeile + 12))
Next i
End Sub
Viele Grüße
Dieter
AW: Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
03.09.2018 21:44:22
Roger
Hallo Dieter
Wow, herzlichen Dank! Das funktioniert einwandfrei.
Du hasts voll drauf.
Ich hoffe, dass ich irgend wann auch mal jemanden helfen kann.
Gruss Roger
Anzeige
Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 06:38:24
Roger
Guten Morgen Dieter
Ich nochmals.
Vorhin hatte ich nun das funktionierende Script in mein eigentliches Excel eingebaut.
Die Starttabelle wo die Zeilen als erstes eingefügt werden nennt sich "db_1" auf der Tabelle1. Die zweite Tabelle nennt sich "Abgelaufene Verträge" auf der Tabelle16.
Jetzt gibt es einen Laufzeitfehler 9 aus. Index ausserhalb des gültigen Bereichs.
Wenn ich nun Debuggen drücke, zeigt es mir die Zeile Set ws = ThisWorkbook.Worksheets("Tabelle" & i)
Was muss ich ändern damit die Tabelle angesprochen wird?
AW: Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 08:19:21
Dieter
Hallo Roger,
wenn ich deine Tabellenblattnamen richtig verstanden habe, dann könnte das so aussehen:
Sub ZeilenEinfuegen()
Dim i As Long
Dim mappe(1 To 2) As String
Dim ws As Worksheet
Dim zeile As Long
mappe(1) = "db_1"
mappe(2) = "Abgelaufene Verträge"
zeile = ActiveCell.Row
For i = 1 To 2
Set ws = ThisWorkbook.Worksheets(mappe(i))
ws.Range(ws.Rows(zeile + 1), _
ws.Rows(zeile + 12)).Insert
ws.Rows(zeile).AutoFill Destination:=ws.Range(ws.Rows(zeile), _
ws.Rows(zeile + 12))
Next i
End Sub
Viele Grüße
Dieter
Anzeige
AW: Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 08:27:55
Dieter
Hallo Roger,
der Name "mappe" war etwas unglücklich gewählt, intuitiver ist die Bezeichnung "blatt", also so:
Sub ZeilenEinfuegen()
Dim i As Long
Dim blatt(1 To 2) As String
Dim ws As Worksheet
Dim zeile As Long
blatt(1) = "db_1"
blatt(2) = "Abgelaufene Verträge"
zeile = ActiveCell.Row
For i = 1 To 2
Set ws = ThisWorkbook.Worksheets(blatt(i))
ws.Range(ws.Rows(zeile + 1), _
ws.Rows(zeile + 12)).Insert
ws.Rows(zeile).AutoFill Destination:=ws.Range(ws.Rows(zeile), _
ws.Rows(zeile + 12))
Next i
End Sub
Viele Grüße
Dieter
Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 08:35:16
Roger
Hallo Dieter
Ach so, dann sind das sogenannte Schleifen?
Anzeige
Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 08:43:58
Roger
Jetzt funktioniert der Script einwandfrei.
Herzlichen Dank Dieter!
Leider kann ich dir mein File aus Datenschutzgründen nicht Zeigen, aber du hast mir sehr geholfen.
Gibt es auf dem Markt ein empfehlenswertes VBA Buch?
AW: Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 14:02:40
Roger
Hallo Dieter
Da ich das Makro ja auf 2 Tabellen nutze und ich beide Tabelle mit Passwort Geschütz habe, hatte ich nach
Sub ZeilenEinfuegen()
ActiveSheet.Unprotect Password:="Test123" eingegeben und am Schluss des Makro
ActiveSheet.Protect Password:="Test123"
End Sub
Leider öffnet es mir das andere Tabellenblatt nicht.
Mache ich da noch einen Überlegungsfehler?
lg Roger
Anzeige
AW: Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 18:37:33
Roger
So habe ich es gelöst;
Worksheets ("db_1").Unprotect Password:="Test123"
Worksheets ("Abgelaufene Verträge").Unprotect Password:="Test123"
AW: Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
04.09.2018 19:39:13
Dieter
Hallo Roger,
1. Für einen VBA-Anfänger könnte ich eines der beiden folgenden Bücher empfehlen:
Baumeister, Inge; Klein Dieter: VBA mit Excel – Der leichte Einstieg, BILDNER Verlag GmbH, 2018,19,90 €
oder
Schels, Ignatz: Excel 2016 VBA-Programmierung, Markt+Technik Verlag, 2018, 19,95 €
2. Wenn deine Tabellenblätter beide mit dem gleichen Passwort geschützt sind, dann könnte das Programm so aussehen:
Sub ZeilenEinfuegen()
Dim i As Long
Dim blatt(1 To 2) As String
Dim ws As Worksheet
Dim zeile As Long
blatt(1) = "db_1"
blatt(2) = "Abgelaufene Verträge"
zeile = ActiveCell.Row
For i = 1 To 2
Set ws = ThisWorkbook.Worksheets(blatt(i))
ws.Unprotect Password:="Test123"
ws.Range(ws.Rows(zeile + 1), _
ws.Rows(zeile + 12)).Insert
ws.Rows(zeile).AutoFill Destination:=ws.Range(ws.Rows(zeile), _
ws.Rows(zeile + 12))
ws.Protect Password:="Test123"
Next i
End Sub
3. Die Struktur

For i = 1 To 2
Next i

nennt man tatsächlich eine Schleife, genauer eine For-Next-Schleife.
Viele Grüße und weiter viel Erfolg
Dieter
Anzeige
Mehrere Zeile mit Formeln auf zwei Tabellen einfüg
05.09.2018 08:01:53
Roger
Hallo Dieter
Danke für dein Buchtipp
Mit deiner Korrektur läuft alles super. Herzlichen Dank!
Für mich noch interessant zu lesen wo du die Blätter entsperren lässt. Ich dachte immer das müsse gleich nach dem Sub Befehl geschehen.
Wieder was dazu gelernt.
Schönen Tag und Gruss
Roger

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige