Mehrere Blätter und Bereich mittels VBA-Inputbox auswählen und in ein Blatt einfügen?

Antwort

Um mehrere Blätter und Bereiche mittels VBA InputBox auszuwählen und diese in ein ausgewähltes Blatt einzufügen, kannst du den folgenden VBA-Code verwenden. Dieser Code zeigt, wie du die Namen der Blätter und die Bereiche über InputBoxen eingeben kannst und die Daten dann in ein Zielblatt kopierst. ```vba Sub CopyMultipleRanges() Dim ws As Worksheet Dim targetWs As Worksheet Dim sheetNames As String Dim rangeAddresses As String Dim targetSheetName As String Dim sheetArray() As String Dim rangeArray() As String Dim i As Integer Dim targetCell As Range ' Eingabe der Blattnamen sheetNames = InputBox("Gib die Namen der Blätter ein, getrennt durch Kommas:") If sheetNames = "" Then Exit Sub sheetArray = Split(sheetNames, ",") ' Eingabe der Bereichsadressen rangeAddresses = InputBox("Gib die Bereichsadressen ein, getrennt durch Kommas:") If rangeAddresses = "" Then Exit Sub rangeArray = Split(rangeAddresses, ",") ' Eingabe des Zielblatts targetSheetName = InputBox("Gib den Namen des Zielblatts ein:") If targetSheetName = "" Then Exit Sub ' Überprüfen, ob das Zielblatt existiert On Error Resume Next Set targetWs = ThisWorkbook.Sheets(targetSheetName) On Error GoTo 0 If targetWs Is Nothing Then MsgBox "Das Zielblatt existiert nicht." Exit Sub End If ' Zielzelle festlegen Set targetCell = targetWs.Cells(1, 1) ' Schleife durch die Blätter und Bereiche For i = LBound(sheetArray) To UBound(sheetArray) Set ws = ThisWorkbook.Sheets(Trim(sheetArray(i))) ws.Range(Trim(rangeArray(i))).Copy targetCell ' Zielzelle für den nächsten Bereich anpassen Set targetCell = targetWs.Cells(targetCell.Row + ws.Range(Trim(rangeArray(i))).Rows.Count, 1) Next i MsgBox "Bereiche wurden erfolgreich kopiert." End Sub ``` Dieser Code führt folgende Schritte aus: 1. Fragt den Benutzer nach den Namen der Blätter und den Bereichsadressen, getrennt durch Kommas. 2. Fragt den Benutzer nach dem Namen des Zielblatts. 3. Überprüft, ob das Zielblatt existiert. 4. Kopiert die angegebenen Bereiche aus den angegebenen Blättern in das Zielblatt. Stelle sicher, dass die Eingaben korrekt sind und dass die Blätter und Bereiche existieren, um Fehler zu vermeiden.

Kategorie: Programmierung Tags: VBA Excel Makro
Frage stellen und sofort Antwort erhalten

Verwandte Fragen

Wie kann die VBA-Formel angepasst werden, sodass alle Mitarbeiter in die Zieltabelle übertragen werden?

Hier ist die überarbeitete Version des Makros, die **jeden Mitarbeiter** aus dem Bereich C9:C66 der Quell-Tabelle ("Personen einzelnd drucken") in die Ziel-Tabelle ("Arbeitsplan&qu... [mehr]

Wie lautet der VBA-Code, um aus Excel eine E-Mail zu erstellen mit einem Empfänger im BCC?

Um in Excel mit VBA eine E-Mail zu erstellen, bei der der Empfänger im BCC steht, kannst du folgenden Code verwenden: ```vba Sub SendEmailWithBCC() Dim OutlookApp As Object Dim OutlookMa... [mehr]

Kann ich mit Access und VBA die SUBSTITUTE-Funktion in Excel ausführen?

Ja, du kannst die SUBSTITUTE-Funktion in Excel auch über VBA (Visual Basic for Applications) in verwenden. Dazu kannst du die Excel-Objektbibliothek in dein Access-Projekt einbinden und die Funkt... [mehr]

xlwings mehrere Excel-Dateien aus einem Ordner zusammenfügen

Um mehrere Excel-Dateien aus einem Ordner mit xlwings zusammenzuführen, kannst du folgendes Python-S verwenden. Dieses Skript öffnet alle Excel-Dateien in einem angegebenen Ordner und fü... [mehr]

Wie können mehrere Spalten verschiedener Excel-Dateien mit xlwings zusammengefügt werden?

Um mehrere Spalten aus verschiedenen Excel-Dateien mit xlwings zusammenzuführen, kannst du die folgenden Schritte befolgen: 1. **Installation von xlwings**: Stelle sicher, dass xlwings installie... [mehr]

VBA: Tabelle prüfen, ob Spalte 3 Werte stehen. Sobald Spalte 3 leer ist, Wert der Spalte 1 kopieren bis zum letzten Wert in Spalte 1.

Um in VBA zu überprüfen, ob in Spalte 3 Werte stehen und bei einer leeren Zelle in Spalte 3 den Wert aus Spalte 1 zu kopieren, kannst du den folgenden Code verwenden. Dieser Code durchlä... [mehr]

Welche Logik steckt hinter VBA?

Die Logik hinter VBA (Visual Basic for Applications) basiert der Programmiersprache Visual Basic, die speziell für die Automatisierung von Aufgaben in Microsoft-Anwendungen wie Excel, Word und Ac... [mehr]

Welche Excel-Bibliothek benutzt Symfony?

Symfony verwendet in der Regel die PHPExcel-Bibliothek oder deren Nachfolger, PhpSpreadsheet, um mit Excel-Dateien zu arbeiten. PhpSpreadsheet ist eine moderne und aktiv gewartete Bibliothek, die eine... [mehr]

Wie beende ich alle Excel-Tasks in C#?

Um alle Excel-Tasks in C# zu beenden, kannst du die `System.Diagnostics`-Namespace verwenden, um alle Prozesse mit dem Namen "EXCEL" zu beenden. Hier ist ein einfaches Beispiel, wie du das u... [mehr]

Volumen der Kugel in VBA?

Das Volumen einer Kugel kann mit der Formel \( V = \frac{4}{3} \pi r^3 \) berechnet werden, wobei \( r \) der Radius der Kugel ist. In VBA (Visual Basic for Applications) kannst eine Funktion erstelle... [mehr]