Thema Datum  Von Nutzer Rating
Antwort
Rot Fehler in Makro mit For und If
20.01.2023 14:47:17 Manuel
Solved
20.01.2023 17:25:45 Gast7622
*****
Solved
20.01.2023 17:49:13 Gast97754
NotSolved
20.01.2023 18:29:46 Gast60334
NotSolved

Ansicht des Beitrags:
Von:
Manuel
Datum:
20.01.2023 14:47:17
Views:
580
Rating: Antwort:
 Nein
Thema:
Fehler in Makro mit For und If

Hallo zusammen :-)

Ich möchte ein Makro erstellen, welches in Tabelle "Kampf" die Spalte B nach Wörtern absucht, die in Spalte A ein X stehen haben. Die mit "x" markierten Wörter soll er im Tabellenblatt "Initiative" in Spalte E finden. Das Wort in der gefundenen Zeile markiert die Zeile (j). Aus dieser Zeile (j) sollen die Spalten L bis CF kopiert werden und im Tabellenblatt Kampf in die zuvor gefundene Zeile (i) in die Spalten H bis CB kopiert werden.

Ich habe es hiermit versucht, doch er zeigt mit den Fehler "Index außerhalb des gültigen Bereichs" an.

Sub neue_Daten()

'Deklaration der Variablen
Dim i As Long, j As Long

'Durchlaufen der Zellen im Tabellenblatt "Kampf" in Spalte B
For i = 3 To 100
    'Prüfen, ob die Zelle in Spalte A ein "x" enthält
    If Worksheets("Kampf").Cells(i, 1) = "x" Then
        'Durchlaufen der Zellen im Tabellenblatt "Initiative" in Spalte E
        For j = 3 To 100
            'Prüfen, ob die Zelle im Tabellenblatt "Kampf" und "Initiative" übereinstimmt
            If Worksheets("Kampf").Cells(i, 2) = Worksheets("Initiative").Cells(j, 5) Then
                'Kopieren der Werte aus den Spalten L bis CF in die Spalten H bis CB im Tabellenblatt "Kampf"
                Worksheets("Kampf").Range(Cells(i, 8), Cells(i, 80)).Value = Worksheets("Initiative").Range(Cells(j, 12), Cells(j, 84)).Value
            End If
        Next j
    End If
Next i

End Sub

 

Wenn ich die Zeile Worksheets("Kampf").Range(Cells(i, 8), Cells(i, 80)).Value = Worksheets("Initiative").Range(Cells(j, 12), Cells(j, 84)).Value wie folgt ändere, dann funktioniert das Makro, jedoch natürlich ohne die Variable und nur wenn ich das Worksheet "Kampf" aktiv habe.

 

Sub neue_Daten()

'Deklaration der Variablen
Dim i As Long, j As Long

'Durchlaufen der Zellen im Tabellenblatt "Kampf" in Spalte B
For i = 3 To 100
    'Prüfen, ob die Zelle in Spalte A ein "x" enthält
    If Worksheets("Kampf").Cells(i, 1) = "x" Then
        'Durchlaufen der Zellen im Tabellenblatt "Initiative" in Spalte E
        For j = 3 To 100
            'Prüfen, ob die Zelle im Tabellenblatt "Kampf" und "Initiative" übereinstimmt
            If Worksheets("Kampf").Cells(i, 2) = Worksheets("Initiative").Cells(j, 5) Then
                'Kopieren der Werte aus den Spalten L bis CF in die Spalten H bis CB im Tabellenblatt "Kampf"
                Worksheets("Kampf").Range(Cells(i, 8), Cells(i, 80)).Value = Worksheets("Initiative").Range("L14:CF14").Value
            End If
        Next j
    End If
Next i

End Sub
 

Hat jemand eine Idee?

Danke für Eure Unterstüttzung.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Fehler in Makro mit For und If
20.01.2023 14:47:17 Manuel
Solved
20.01.2023 17:25:45 Gast7622
*****
Solved
20.01.2023 17:49:13 Gast97754
NotSolved
20.01.2023 18:29:46 Gast60334
NotSolved