zellen_automatisch_auschneiden_und_einfuegen
16.04.2025 14:53:59
Matthias
ich würde gern diesen Thread nochmal aufnehmen. Da ich nicht weis wie ich direkt darauf antworten kann auf diesem Weg.
https://www.herber.de/forum/archiv/2004to2008/2004011_zellen_automatisch_auschneiden_und_einfuegen.html
Es geht darum aus einem Mitarbeitergespräch das wir als Excel Sheet zurückbekommen bestimmte Zellen zu leeren und die Datei für das nächste Gespräch vorzubereiten.
Aktuelle habe ich eine Ausgangsdatei und eine die das Ergebnis zeigt. In beiden Dateien sind 2 Tabellenblätter ausgeblendet. Diese sollen auch bearbeitet werden. Ich habe ein Makro für die einzelnen Schritte aufgezeichnet, leider wird nicht alles so ausgeführt wie ich es mir wünsche.
Folgendes soll gemacht werden:
Deckblatt:
B7 löschen
F16 und H16 leeren (sofern ein Haken gesetzt ist) hat keine Priorität!
Entwicklungsmaßnahmen:
A12 - A17 Inhalte löschen (gleiches für die Zellen C,H,J 12 -17)
A24 - A29 und C24 - C29 kopieren und in A12 - A17 und C24 - C29 einfügen
dann A24 - A29 Inhalte löschen (gleiches für die Zellen C,H,I,J 24 - 29)
Schulungsplan (ausgeblendet):
- einblenden
- nach Spalte C 4 Spalten einfügen
- in Zelle G2 - G7 Wert aus Deckblatt H5 einfügen
- die erste Zeile komplett löschen
Gehaltsanpassung (ausgeblendet):
- einblenden
- nach Spalte C 4 Spalten einfügen
- in Zelle G2 Wert aus Deckblatt H5 einfügen
- die erste Zeile komplett löschen
Danach die beiden Blätter wieder ausblenden und speichern. Hier wäre es super wenn die Datei unter neuem Namen gespeichert werden könnte. Kein muss.
Als Anhang 1x die Ausgangsdatei und 1x das gewünschte Ergebnis.
https://www.herber.de/bbs/user/176755.xlsx
https://www.herber.de/bbs/user/176756.xlsx
Und hier der der Inhalt des aufgezeichneten Makros: Ganz unten steht Danke! :-)
Sub MAG_komplett()
'
' MAG_komplett Makro
'
'
Range("B7:D7").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("C8").Select
Sheets("Entwicklungsmaßnahmen").Select
Range("A12:K17").Select
Selection.ClearContents
ActiveWindow.SmallScroll Down:=8
Range("A24:G29").Select
Selection.Copy
ActiveWindow.SmallScroll Down:=-20
Range("A12:B12").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=12
Range("A24:K29").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("C29:G29").Select
Sheets("Erläuterungen").Select
Sheets("Schulungsplan").Visible = True
Columns("D:G").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("G2").Select
ActiveCell.FormulaR1C1 = "=Deckblatt!R[3]C[1]"
Range("G2").Select
ActiveCell.FormulaR1C1 = "=Deckblatt!R5C[1]"
Selection.AutoFill Destination:=Range("G2:G7"), Type:=xlFillDefault
Range("G2:G7").Select
Rows("1:1").Select
Selection.Delete Shift:=xlUp
Range("A1").Select
Sheets("Schulungsplan").Select
Sheets("Bemerkungen").Visible = True
Columns("D:G").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("G2").Select
ActiveCell.FormulaR1C1 = "=Deckblatt!R[3]C[1]"
Range("G2").Select
ActiveCell.FormulaR1C1 = "=Deckblatt!R5C[1]"
Rows("1:1").Select
Selection.Delete Shift:=xlUp
Sheets("Bemerkungen").Select
ActiveWindow.SelectedSheets.Visible = False
Sheets("Schulungsplan").Select
ActiveWindow.SelectedSheets.Visible = False
Sheets("Deckblatt").Select
ActiveWorkbook.Save
End Sub
Vielen lieben Dank!
Anzeige