Ist 'Range(Cells(a,10):Cells(b,10)).Copy' im VBA-Code korrekt?

Antwort

Die Syntax `Range(Cells(a,10):Cells(b,10)).Copy` ist in VBA (Visual Basic for Applications) **nicht korrekt**. In VBA muss der Bereich innerhalb der `Range`-Funktion als String oder als zwei separate `Range`-Objekte angegeben werden. **Korrekte Schreibweise:** ```vba Range(Cells(a, 10), Cells(b, 10)).Copy ``` **Erklärung:** - `Cells(a, 10)` gibt die Zelle in Zeile `a` und Spalte 10 zurück. - `Cells(b, 10)` gibt die Zelle in Zeile `b` und Spalte 10 zurück. - `Range(ErsteZelle, LetzteZelle)` definiert den Bereich von der ersten bis zur letzten Zelle. **Wichtig:** Wenn du diesen Code in einem anderen Arbeitsblatt als dem aktiven ausführst, solltest du das Arbeitsblatt explizit angeben, z.B.: ```vba Worksheets("Tabelle1").Range(Worksheets("Tabelle1").Cells(a, 10), Worksheets("Tabelle1").Cells(b, 10)).Copy ``` So vermeidest du Fehler durch nicht explizit referenzierte Arbeitsblätter.

Kategorie: Programmierung Tags: VBA Excel Range
KI fragen

Verwandte Fragen

Gibt es If Not (Bedingung) Then in VBA für Excel?

Ja, in VBA für Excel gibt es die Möglichkeit, eine Bedingung mit **If Not (Bedingung) Then** zu prüfen. Das Schlüsselwort **Not** kehrt die Bedingung um. Hier ein Beispiel: ```vba... [mehr]

Wie kann ich mit VBA den Bereich 'Test' in Blatt 1 kopieren und in Blatt 2 ab Zelle B18 einfügen?

Um in Excel mit VBA einen Bereich namens "test" aus Blatt 1 zu kopieren und in Blatt 2 ab Zelle B18 einzufügen, kannst du folgenden VBA-Code verwenden: ```vba Sub BereichKopieren()... [mehr]

Wie kann man Zahlen in Excel-VBA ohne wissenschaftliches Format in eine .txt-Datei schreiben?

Um Zahlen wie 6,9999999999 in Excel-VBA beim Schreiben in eine .txt-Datei **nicht** im wissenschaftlichen Format (z. B. 6,9999999999E+00), sondern exakt so wie sie sind (mit allen Nachkommastellen), z... [mehr]

Wie lautet die Syntax, um in Excel VBA ein bestimmtes Tabellenblatt zu aktivieren?

Um in Excel VBA ein bestimmtes Tabellenblatt zu aktivieren, verwendest du folgende Syntax: ```vba Worksheets("Tabellenblattname").Activate ``` Ersetze dabei `"Tabellenblattname"`... [mehr]

Wie kann man eine per Access-VBA automatisch geöffnete Excel-Datei direkt wieder schließen?

Um eine Excel-Datei, die per Access-VBA geöffnet wurde, automatisch wieder zu schließen, solltest du das Excel-Objektmodell in deinem Access-VBA-Code verwenden. Hier ein Beispiel, wie das g... [mehr]

Was bedeutet der Befehl "QuellBlatt1.Rows(2).Copy" in VBA?

Der Befehl `QuellBlatt1.Rows(2).Copy` in VBA (Visual Basic for Applications) bedeutet, dass die **zweite Zeile** (Row 2) des Arbeitsblatts mit dem Namen oder Objektverweis `QuellBlatt1` **kopiert** wi... [mehr]

Wie lässt sich in Excel VBA der Typ eines Tabellenblatts (Chart oder Worksheet) ermitteln?

In Excel VBA kannst du den Typ eines Tabellenblatts (ob es sich um ein Arbeitsblatt oder ein Diagrammblatt handelt) mit der Type-Eigenschaft des jeweiligen Objekts ermitteln. Hier ein Beispiel: ```vb... [mehr]

Wie kann ich mit einem VBA-Makro die Zeilen 8 bis 10 ausblenden?

Um in Excel mit einem VBA-Makro die Zeilen 8 bis 10 auszublenden, kannst du folgenden Code verwenden: ```vba Rows("8:10").Hidden = True ``` So gehst du vor: 1. Drücke `ALT + F11`, um... [mehr]

Wie ruft makro1() in VBA makro2() mit dem Wert 5 auf?

So sieht das in VBA aus: ```vba Sub Makro1() Call Makro2(5) End Sub Sub Makro2(ByVal Wert As Integer) MsgBox "Der übergebene Wert ist: " & Wert End Sub ``` **Erkläru... [mehr]

Wo liegt der Fehler in 'If (or(Cells(i, 9) = "ÜS";Cells(i, 9) = "AS")) Then'?

Der Fehler liegt in der Syntax. In VBA (Visual Basic for Applications) gibt es keine Funktion `or()`, und die Bedingungen werden mit `Or` (ohne Klammern) verbunden. Außerdem verwendet VBA Kommas... [mehr]