Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1700to1704
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Makro funktioniert nach kopieren nicht mehr
23.07.2019 14:51:48
Jenny
Hallo an euch alle,
zuerst einmal ich muss gestehen, mein Makro ist mit wenigen VBA Kenntnissen und ein paar Tipps aus Foren selbst zusammengebastelt.
Aber an einer Stelle komme ich nicht weiter.
Prinzipiell geht es darum ich füge Texte in Spalte A ein, bestimmte Texte davon werden dann automatisch nach Spalte B und C kopiert und Spalte A wird weder geleert.
Nur manchmal gehe ich hin und schneide 2 in der selben Zeile liegenden Zellen in Spalte B und C aus und füge den Inhalt in Spalte B und C der Tabelle 2 ein.
Dann bekomme ich die Meldung "Die Methode 'Range' für das Obejekt '_Worksheet' ist fehlgeschlagen und ich kann das Makro nicht mehr benutzen, bis ich Excel geschlossen und wieder geöffnet habe.
Gibt es da eine Lösung, dass ich die Zeilen ausschneiden und einfügen kann ohne dass das Makro crasht?
Danke
Jenny
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim i As Long, StartZeile As Long, EndZeile As Long, letzteLeereZeile As Long
 Application.EnableEvents = False
With Sheet1
'        StartZeile = InputBox("Ab welcher Zeile soll gestartet werden?", "Abfrage1")
StartZeile = 3
ANFANG:
EndZeile = .Cells(Rows.Count, 1).End(xlUp).Row
For i = StartZeile To EndZeile Step 6
If StartZeile = 3 Then
If letzteLeereZeile = 0 Then
letzteLeereZeile = .Cells(Rows.Count, 2).End(xlUp).Row + 1
Else
letzteLeereZeile = .Cells(Rows.Count, 2).End(xlUp).Row + 1
End If
.Cells(letzteLeereZeile, 2).Value = .Cells(i, 1).Value
Else
If StartZeile = 5 Then
If letzteLeereZeile = 0 Then
letzteLeereZeile = .Cells(Rows.Count, 3).End(xlUp).Row + 1
Else
letzteLeereZeile = .Cells(Rows.Count, 3).End(xlUp).Row + 1
End If
.Cells(letzteLeereZeile, 3).Value = .Cells(i, 1).Value
End If
End If
Next i
If StartZeile = 5 Then
.Range(.Cells(1, 1), Cells(Rows.Count, 1)).Value = ""
Else
StartZeile = 5
letzteLeereZeile = 0
GoTo ANFANG
End If
End With
Application.EnableEvents = True
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro funktioniert nach kopieren nicht mehr
23.07.2019 15:02:01
Jenny
kleine Nachtrag, wenn ich debug mache, wird die Zeile
.Range(.Cells(1, 1), Cells(Rows.Count, 1)).Value = ""
markiert
AW: Makro funktioniert nach kopieren nicht mehr
23.07.2019 15:08:36
peterk
Hallo
Da fehlt ein Punkt
.Range(.Cells(1, 1), .Cells(Rows.Count, 1)).Value = ""
AW: Makro funktioniert nach kopieren nicht mehr
23.07.2019 15:11:21
Jenny
Hallo Peter,
danke für den Hinweis.
Jenny
AW: Makro funktioniert nach kopieren nicht mehr
23.07.2019 15:09:31
Torsten
Hallo,
in der Zeile fehlt vor dem 2. Cells der Punkt:
.Range(.Cells(1, 1), .Cells(Rows.Count, 1)).Value = ""
Gruss Torsten
AW: Makro funktioniert nach kopieren nicht mehr
23.07.2019 15:42:44
Jenny
Hallo ihr beiden,
sorry Peter, irgendwie stand ich auf dem Schlauch, dachte erst das wäre nur ein allgemeiner Hinweis, das eigentliche Problem wäre umfangreicher.
Aber jetzt wo ich zeit hatte zu testen wurde mr klar, dass ihr mir beide die Lösung gegeben habt.
Danke für eure Unterstützung, jetzt klappt alles.
Jenny
Anzeige

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige