Nur bestimmten Zellbereich kopieren und exportieren
Schritt-für-Schritt-Anleitung
Um nur einen bestimmten Zellbereich in Excel zu kopieren und zu exportieren, kannst du den folgenden VBA-Code verwenden. Dieser Code kopiert die Zellen A1:P36 aus dem Blatt "EXPORT" und ersetzt alle Formeln durch ihre Werte, gerundet auf zwei Dezimalstellen.
- Öffne Excel und drücke
ALT + F11
, um den VBA-Editor zu öffnen.
- Klicke auf
Einfügen
> Modul
, um ein neues Modul zu erstellen.
- Füge den folgenden Code in das Modul ein:
Sub BlattKopieren()
Dim strFile As String
strFile = "MAPPE1_DATEN" ' Dateinamen vorgeben!
strFile = Application.GetSaveAsFilename(initialfilename:=strFile, _
fileFilter:="Excel Files (*.xls; *.xla; *.xlt), *.xls; *.xla; *.xlt")
If strFile = "Falsch" Then Exit Sub
' Kopiere den spezifischen Zellbereich
Workbooks("Mappe.xls").Sheets("EXPORT").Range("A1:P36").Copy
' Neues Workbook erstellen und die kopierten Daten einfügen
With Workbooks.Add
.Sheets(1).Range("A1").PasteSpecial Paste:=xlPasteValues
' Werte runden
.Sheets(1).Range("A1:P36").Value = Application.WorksheetFunction.Round(.Sheets(1).Range("A1:P36").Value, 2)
.SaveAs strFile
'.Close ' wenn die neue Mappe geschlossen werden soll!
End With
End Sub
- Schließe den VBA-Editor und führe das Makro aus, indem du
ALT + F8
drückst und das Makro auswählst.
Häufige Fehler und Lösungen
Fehler: Das Workbook kann nicht gefunden werden.
Stelle sicher, dass der Name des Workbooks in deinem Code korrekt ist. Es sollte genau mit dem Namen übereinstimmen, der in Excel angezeigt wird.
Fehler: Der Zellbereich ist ungültig.
Überprüfe, ob der Zellbereich "A1:P36" im Blatt "EXPORT" tatsächlich existiert. Achte darauf, dass keine Leerzeichen im Blattnamen sind.
Alternative Methoden
Wenn du keine VBA-Lösung nutzen möchtest, kannst du auch manuell vorgehen:
- Markiere den Zellbereich A1:P36 im Blatt "EXPORT".
- Kopiere die Zellen mit
CTRL + C
.
- Öffne ein neues Excel-Dokument und füge die Zellen mit
CTRL + V
ein.
- Um die Formeln durch Werte zu ersetzen, wähle den eingefügten Bereich aus, klicke mit der rechten Maustaste, wähle
Inhalte einfügen
und dann Werte
.
- Um die Werte zu runden, kannst du die Funktion
RUNDEN
in einer neuen Spalte verwenden.
Praktische Beispiele
Du kannst den Code anpassen, um verschiedene Zellbereiche zu exportieren. Zum Beispiel:
- Um die Zellen A1:A10 zu exportieren, ändere
Range("A1:P36")
in Range("A1:A10")
.
- Wenn du ein anderes Blatt exportieren möchtest, passe den Namen nach
Sheets("EXPORT")
an.
Tipps für Profis
- Nutze
Application.ScreenUpdating = False
, um die Bildschirmaktualisierung während der Ausführung des Makros zu deaktivieren. Das beschleunigt den Prozess.
- Füge Error-Handling hinzu, um unerwartete Fehler besser zu managen.
- Experimentiere mit weiteren Excel-Funktionen wie
SUMME
oder DURCHSCHNITT
, um Daten im Export zu analysieren.
FAQ: Häufige Fragen
1. Wie kann ich den Code anpassen, um einen anderen Zellbereich zu kopieren?
Ändere einfach den Range-Wert im Code, um den gewünschten Bereich zu bestimmen.
2. Gibt es eine Möglichkeit, das Makro automatisch auszuführen?
Ja, du kannst das Makro so einstellen, dass es beim Öffnen der Datei automatisch ausgeführt wird. Füge dazu den Aufruf des Makros in die Workbook_Open
-Prozedur ein.
3. Funktioniert dieser Code in allen Excel-Versionen?
Der Code ist für Excel 2007 und höher geeignet. Bei älteren Versionen kann es zu Abweichungen in der Funktionsweise kommen.