Wie kann ich mehrere Blätter und Bereiche mit Application.InputBox auswählen, kopieren und in ein mithilfe von Application.InputBox ausgewähltes Blatt einfügen?

Antwort

Um mehrere Blätter und Bereiche mit `Application.InputBox` in Excel VBA auszuwählen, zu kopieren und in ein mit `Application.InputBox` ausgewähltes Blatt einzufügen, kannst du den folgenden VBA-Code verwenden. Dieser Code zeigt, wie du die Eingabeauffung verwendest, um die Blätter und Bereiche auszuwählen und die Daten zu kopieren: ```vba Sub CopyMultipleRanges() Dim wsSource As Worksheet Dim wsTarget As Worksheet Dim rngSource As Range Dim rngTarget As Range Dim targetSheetName As String Dim sourceSheetName As String Dim sourceRangeAddress As String Dim targetRangeAddress As String Dim i As Integer Dim numRanges As Integer ' Anzahl der zu kopierenden Bereiche abfragen numRanges = Application.InputBox("Wie viele Bereiche möchtest du kopieren?", Type:=1) ' Zielblatt abfragen targetSheetName = Application.InputBox("Gib den Namen des Zielblatts ein:", Type:=2) On Error Resume Next Set wsTarget = ThisWorkbook.Sheets(targetSheetName) On Error GoTo 0 If wsTarget Is Nothing Then MsgBox "Das Zielblatt existiert nicht." Exit Sub End If ' Zielbereich abfragen targetRangeAddress = Application.InputBox("Gib die Adresse des Zielbereichs ein:", Type:=8) Set rngTarget = wsTarget.Range(targetRangeAddress) ' Schleife durch die Anzahl der Bereiche For i = 1 To numRanges ' Quellblatt abfragen sourceSheetName = Application.InputBox("Gib den Namen des Quellblatts " & i & " ein:", Type:=2) On Error Resume Next Set wsSource = ThisWorkbook.Sheets(sourceSheetName) On Error GoTo 0 If wsSource Is Nothing Then MsgBox "Das Quellblatt " & i & " existiert nicht." Exit Sub End If ' Quellbereich abfragen sourceRangeAddress = Application.InputBox("Gib die Adresse des Quellbereichs " & i & " ein:", Type:=8) Set rngSource = wsSource.Range(sourceRangeAddress) ' Bereich kopieren und einfügen rngSource.Copy Destination:=rngTarget ' Zielbereich für den nächsten Kopiervorgang anpassen Set rngTarget = rngTarget.Offset(rngSource.Rows.Count, 0) Next i MsgBox "Kopieren abgeschlossen." End Sub ``` Dieser Code führt dich durch die Schritte, um die Anzahl der zu kopierenden Bereiche, die Quellblätter und -bereiche sowie das Zielblatt und den Zielbereich auszuwählen. Die Daten werden dann entsprechend kopiert und eingefügt.

KI fragen

Verwandte Fragen

Wie kann man mehrere Sheets in Excel mit VBA gleichzeitig sichtbar machen?

In VBA (Visual Basic for Applications) kannst du mehrere Arbeitsblätter nicht direkt in einer Zeile wie in deinem Beispiel sichtbar machen. Der Ausdruck `Sheets("TP1", "TP2").... [mehr]

Wirken sich Application.OnKey und Application.CommandBars auf andere geöffnete Excel-Dateien aus?

Ja, sowohl `Application.OnKey` als auch `Application.CommandBars` wirken sich auf die gesamte Excel-Anwendung aus – und damit auf **alle geöffneten Arbeitsmappen** (Excel-Dateien) in dieser... [mehr]

Wie zeige ich per VBA in Excel eine Messagebox an, wenn ein bestimmter Wert überschritten oder erreicht wird?

Um in Excel mit VBA eine MessageBox anzuzeigen, wenn ein bestimmter Wert überschritten oder gleich ist, kannst du beispielsweise folgenden Code verwenden. Angenommen, du möchtest prüfen... [mehr]

Wie zeige ich in Excel per VBA eine Messagebox an, wenn eine Zelle einen bestimmten Wert unterschreitet?

Um in Excel per VBA eine MessageBox erscheinen zu lassen, wenn eine Zelle einen bestimmten Wert unterschreitet, kannst du das Worksheet-Change-Ereignis verwenden. Hier ein Beispiel, wie du das umsetze... [mehr]

Wie kann ich in Excel-VBA den Inhalt einer bestimmten Tabelle komplett löschen?

Um in Excel-VBA den Inhalt einer bestimmten Tabelle (z.B. "Tabelle1") komplett zu löschen, kannst du folgenden Code verwenden: ```vba Worksheets("Tabelle1").Cells.ClearConten... [mehr]

Wie vergrößere ich den Text in der Bearbeitungsleiste einer Excel-Tabelle?

Um den Text in der Bearbeitungsleiste (Formelleiste) in Microsoft Excel zu vergrößern, gibt es folgende Möglichkeiten: **1. Zoom-Funktion der Bearbeitungsleiste (ab Excel 365/2019):**... [mehr]

Gibt es eine kostenlose Alternative zu Excel für Android?

Ja, es gibt mehrere kostenlose Alternativen zu Excel für Android. Zu den bekanntesten zählen: 1. **Google Tabellen (Google Sheets)** Kostenlos nutzbar, benötigt ein Google-Konto.... [mehr]

Wie kann ich eine Zahl in Excel bei einer Verknüpfung direkt aufrunden?

Um in Excel eine Zahl bei einer Verknüpfung direkt aufzurunden, kannst du die Funktion `AUFRUNDEN` verwenden. Das funktioniert so: **Syntax:** `=AUFRUNDEN(Zahl; Anzahl_Stellen)` **Beispiel mi... [mehr]

Gibt es in Excel 2021 eine Vorlage für ein Gantt-Diagramm?

In Excel 2021 gibt es keine spezielle, direkt auswählbare Vorlage für ein Gantt-Diagramm wie bei einigen anderen Projektmanagement-Tools. Allerdings bietet Excel verschiedene Vorlagen fü... [mehr]

Sollte man für die Platzierung der Balken in einem Gantt-Diagramm mit Excel-Makro cm in pt im Arbeitsblatt oder im Makro umrechnen?

Es ist grundsätzlich empfehlenswert, die Umrechnung von Zentimetern (cm) in Punkt (pt) direkt im Makro vorzunehmen, nicht im Arbeitsblatt. Dafür sprechen folgende Gründe: 1. **Flexibil... [mehr]