Wie markiere ich mehrere Blätter und Bereiche in Excel mit Application.InputBox und kopiere die Daten?

Antwort

Um mehrere Blätter und Bereiche in Excel mit `Application.InputBox` auszuwählen und die Daten zu kopieren, kann VBA (Visual Basic for Applications) verwendet werden. Hier ist ein Beispiel, wie das gemacht werden kann: ```vba Sub CopyMultipleRanges() Dim ws As Worksheet Dim rng As Range Dim selectedRanges As Range Dim destSheet As Worksheet Dim destCell As Range Dim userInput As String Dim addressArray() As String Dim i As Integer ' Zielarbeitsblatt und Zelle festlegen Set destSheet = ThisWorkbook.Sheets("Zielblatt") ' Zielblatt anpassen Set destCell = destSheet.Range("A1") ' Zielzelle anpassen ' Eingabefeld für die Auswahl der Bereiche userInput = Application.InputBox("Gib die Bereiche ein, die du kopieren möchtest (z.B. 'Sheet1!A1:B2,Sheet2!C3:D4'):", Type:=2) ' Überprüfen, ob der Benutzer die Eingabe abgebrochen hat If userInput = "False" Then Exit Sub ' Adressen in ein Array aufteilen addressArray = Split(userInput, ",") ' Schleife durch die Adressen und Bereiche kopieren For i = LBound(addressArray) To UBound(addressArray) Set rng = Range(addressArray(i)) ' Bereich kopieren und in das Zielblatt einfügen rng.Copy destCell ' Zielzelle für den nächsten Einfügevorgang anpassen Set destCell = destSheet.Cells(destCell.Row + rng.Rows.Count, destCell.Column) Next i MsgBox "Bereiche wurden erfolgreich kopiert!" End Sub ``` Dieses Skript führt folgende Schritte aus: 1. Es wird ein Eingabefeld angezeigt, in dem die Benutzer die Bereiche eingeben können, die sie kopieren möchten. Die Bereiche sollten im Format `SheetName!Range` eingegeben und durch Kommas getrennt werden. 2. Die eingegebenen Bereiche werden in ein Array aufgeteilt. 3. Jeder Bereich wird kopiert und in das Zielblatt eingefügt, wobei die Zielzelle für jeden Einfügevorgang angepasst wird. Bitte passe die Namen des Zielblatts und der Zielzelle entsprechend deinen Anforderungen an.

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]

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]

Wie kann man mit einem Excel-Makro ein Rechteck in der Standardfarbe Orange (Farbcode 49407) ausfüllen?

Um in Excel per Makro (VBA) ein Rechteck mit der Standardfarbe Orange (Farbcode 49407) auszufüllen, kannst du folgenden VBA-Code verwenden: ```vba Sub RechteckOrangeFüllen() Dim shp As... [mehr]

Warum lässt sich meine Excel-Tabelle nicht mehr scrollen?

Wenn deine Excel-Tabelle wie eingefroren ist und sich nicht mehr scrollen lässt, kann das verschiedene Ursachen haben. Hier sind die häufigsten Gründe und Lösungen: 1. **Scroll-Lo... [mehr]

Wie beende ich ein Excel-Makro nach einer MsgBox mit vbYesNo bei Nein per Exit Sub, während es bei Ja fortgesetzt wird?

Das kannst du mit einer einfachen If-Abfrage umsetzen. Beispiel: ```vba If MsgBox("Möchtest du fortfahren?", vbYesNo + vbQuestion, "Bestätigung") = vbNo Then Exit Su... [mehr]

Wie summiert man eine Spalte in Excel auf?

Um in Excel die Werte einer Spalte aufzusummieren, kannst du die Funktion **SUMME** verwenden. Angenommen, du möchtest die Werte in der Spalte A von Zeile 1 bis 10 aufsummieren, gehst du so vor:... [mehr]