Makro: Zeile einfügen
Hallo,
ich suche für die Erstellung eines Formulars in Tabelle 1 eine Funktion 'Zeile einfügen'. Die entsprechende definierte Zeile habe ich in Tabelle 3 hinterlegt. Beim Anklicken eines bereits erstellten Steuerelements soll diese Zeile in Tabelle 1 eingefügt werden. Bei der Erstellung und Zuweisung eines Makros komme ich aber nicht weiter.
Ich hoffe jemand hat eine Lösung für das Problem.
Danke schon mal im Voraus.
Gruss
Thomas
Antwort schreiben
Antwort 1 von fedjo vom 30.05.2019, 18:37 Options
Hallo Thomas,
den Code in ein Modul einfügen.
Er fügt aus Tabelle3 die Zeilen von Spalte A:F in Tabelle1 ein.
Gruß
fedjo
Sub Zeile_einfügen()
Worksheets(1).Range("A:F") = _
Worksheets(3).Range("A:F").Value2
End Sub
Antwort 2 von 10Deluxe vom 05.06.2019, 10:47 Options
Hallo Fedjo,
danke für die Antwort.
Kann leider erst jetzt antworten.
Das Makro passt in der Form nicht zu meinem Anwendungsfall:
Der hinterlegte Bereich ist in Tabellenblatt 3, Zeile 2, Spalte A:N und soll in Tabellenblatt 1 in Zeile 29 ff einzeln eingefügt werden können.
Wie muss der Bereich im Makro benannt werden?
Danke für die Hilfe im Voraus.
Gruss
Thomas
Antwort 3 von fedjo vom 05.06.2019, 16:55 Options
Hallo Thomas,
Zitat:
Zeile 29 ff einzeln eingefügt werden können
bitte genauer beschreiben.
Gruß
fedjo
Antwort 4 von 10Deluxe vom 06.06.2019, 11:00 Options
Hallo Fedjo,
die vordefinierte Zeile soll durch anklicken eines Buttons in Tabellenblatt 1 eingefügt werden. Diese Funktion würde in meinem Fall ab Zeile 29 Sinn machen.
Vielleicht kann man auch definieren, dass man sich in Zeile 29 ff / Spalte A befinden muss, um durch Auswählen des Steuerelements die neue Zeile zu erhalten.
Hoffe es ist nun etwas klarer.
Gruss
Thomas
Antwort 5 von fedjo vom 06.06.2019, 19:09 Options
Hallo Thomas,
wenn ich alles richtig verstanden habe, dann sollte der Code deine Anforderung erfüllen.
Das Makro kann nur gestartet werden, wenn Zelle A30 aktiv ist, sonst erscheint ein Hinweis auf die Zelle.
Nach A29 (Tabelle1) wird eine neue Zeile mit dem Inhalt von Tabelle3 (A2:N2) eingefügt.
Gruß
fedjo
Sub Zeile_einfügen()
If ActiveCell.Address = "$A$30" Then
Sheets("Tabelle1").Rows("29:29").Insert Shift:=xlDown
Worksheets(1).Range("A29:N29") = _
Worksheets(3).Range("A2:N2").Value2
Else
MsgBox "Tabelle1 Zelle A30 auswählen"
End If
End Sub
Antwort 6 von 10Deluxe vom 19.06.2019, 11:36 Options
Hallo Fedjo,
bin aus dem Urlaub zurück und versuche dein Malro einzubauen.
Das Einfügen der definierten Zeile funktioniert, die Übernahme der Formeln der Zeile allerdings nicht.
Woran kann das liegen?
Gruss
Thomas
Antwort 7 von fedjo vom 19.06.2019, 18:03 Options
Hallo Thomas,
versuchs mal so:
Gruss
fedjo
Sub Zeile_einfügen()
If ActiveCell.Address = "$A$30" Then
Sheets("Tabelle1").Rows("29:29").Insert Shift:=xlDown
Worksheets(3).Range("A2:N2").Copy
Worksheets(1).Range("A29").Select
ActiveSheet.Paste
Else
MsgBox "Tabelle1 Zelle A30 auswählen"
End If
End Sub