Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zelle nach unten kopieren, klappt nicht

Zelle nach unten kopieren, klappt nicht
05.09.2024 20:31:06
norbert
Guten Abend zusammen,
die aktuelle Zelle ist z.B. ActiveCell.Offset(0, 0).Select .
(steht gerad in A22)
jetzt soll in Spalte 11 die enthaltene Formel nach unten kopiert werden.
ActiveCell.Offset(0, 0).Select
ActiveCell.Offset(-1, 11).Copy ActiveCell.Offset(1, 11)
ActiveCell.Offset(-1, 13).Copy ActiveCell.Offset(1, 13)
ActiveCell.Offset(-1, 14).Copy ActiveCell.Offset(1, 14)

leider wird nichts kopiert, was habe ich FALSCH gemacht.

mfg norbert
Anzeige

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

Betreff
Datum
Anwender
Anzeige
Habe es selbst gefunden -)
05.09.2024 20:49:38
norbert
Guten Abend,
habe es gefunden:
ActiveCell.Offset(-1, 11).Copy ActiveCell.Offset(0, 11)
ActiveCell.Offset(-1, 13).Copy ActiveCell.Offset(0, 13)
ActiveCell.Offset(-1, 14).Copy ActiveCell.Offset(0, 14)

so klappt es.
gr norbert
AW: Zelle nach unten kopieren, klappt nicht
05.09.2024 21:06:28
Yal
Hallo Norbert,

eigentlich nichts falsches. Überraschenderweise scheint der Copy-Paste-Vorgang ein nicht nachvollziehbares Problem mit dem Code zu haben.

Es hat bei mir bei ersten Lauf nicht funktioniert. Ich habe dann mit einem With versucht:
Sub test()

With ActiveCell
.Offset(-1, 11).Copy .Offset(1, 11)
.Offset(-1, 13).Copy .Offset(1, 13)
.Offset(-1, 14).Copy .Offset(1, 14)
End With
End Sub

Es hat funktioniert.

Dann war ich neugierig und habe ActiveCell mal auf die Copy (linke Teil), mal auf Paste Teil (rechte Teil), mal auf beiden:
Sub test()

With ActiveCell
ActiveCell.Offset(-1, 11).Copy .Offset(1, 11)
.Offset(-1, 13).Copy ActiveCell.Offset(1, 13)
ActiveCell.Offset(-1, 14).Copy ActiveCell.Offset(1, 14)
End With
End Sub

Alle 3 Versionen haben funktioniert.

Dann bin ich zurück auf das original, ohne With, und es hat auch funktioniert. Ratlos.

Ich schlage vor, übernehme einfach den erste Code mit "With ActiveCell". Es ist sowieso die lesbarere Version.

ActiveCell.Offset(0, 0).Select hat übrigens nur einen Bedeutung, wenn davor etwas anderes selektiert wäre und Selection.Copy gerufen wäre.
Offset(0,0) ist auch ohne Wirkung. Man benutze es höchstens in einer Reihe, um einen bildlich koherenten Code zu haben (aber nur für das Auge):
...

.Offset(0, 0).Value = ...
.Offset(1, 0).Value = ...
.Offset(2, 0).Value = ...
...usw


VG
Yal


Anzeige
Hallo Yal, danke für die Beispiele... -)
06.09.2024 15:47:28
norbert
Hallo Yal,
danke für die Beispiele.
Habe meines immer wieder getestet, läuft auch.

mfg norbert
AW: Zelle nach unten kopieren, klappt nicht
06.09.2024 08:53:58
GerdL
Moin,
noch ein Gedicht.
        Dim x As Long


x = ActiveCell.Row
If x = 1 Then Exit Sub
Cells(x - 1, 12).Copy Cells(x, 12)
Cells(x - 1, 14).Resize(1, 2).Copy Cells(x, 14)

Gruß Gerd
Anzeige
Hallo Gerd, danke auch Dir für dein Beispiel -)
06.09.2024 15:48:50
norbert
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige