Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
724to728
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
724to728
724to728
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

code kürzen

code kürzen
26.01.2006 11:42:51
Bernd
hallo,
ich habe da ein problem.
und zwar:
ich habe diesen code-schnipsel
Range("F41").Select
Selection.Copy
Range("E41").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
range("J41").Select
selection.copy
range("I41").select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
und für weitere 31 zellen
also beginnend bei f41, kopieren, 1 zelle nach links, wert einfügen,
5 zellen nach rechts, kopieren, 1 zelle nach links, wert einfügen,
5 zellen nach rechts, kopieren, 1 zelle nach usw.
das 31 mal
kann man da den code eleganter und kürzer schreiben als mein schnipsel-
ausschnitt?
danke für eure hilfe
gruss bernd

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: code kürzen
26.01.2006 11:54:41
u_
Hallo,
klar geht das.

Sub test()
Dim i As Integer
For i = 6 To 141 Step 5
Cells(41, i).Copy
Cells(41, i + 1).PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Next i
Application.CutCopyMode = False
End Sub

Gruß
Geist ist geil!
AW: code kürzen
26.01.2006 12:11:01
Martin
Hallo u,
müßte m.E. i -1 heißen. Ansonsten noch ewas kürzer ist

Sub test()
Dim i As Integer
For i = 6 To 141 Step 5
Cells(41, i - 1) = Cells(41, i).Value
Next i
End Sub

Gruß
Martin Beck
AW: code kürzen
26.01.2006 12:03:06
Paul
Hallo Bernd,
probierst mal so

Sub Test()
Dim i as Integer
i = 1
Cells(41,6).select 'entspricht Zelle "F41"
Do until i = 32
Cells(ActiveCell.Row, ActiveCell.Column -1).Value = ActiveCell.Value 'übergibt der Zelle links von der Aktiven Zelle deren Wert
Cells(ActiveCell.Row, ActiveCell.Column +5).Select 'Springt die Zelle 5 weiter rechts an
i = i+1
loop
End Sub

Das sollte es eigentlich schon tun.
Meld Dich mal ob's geklappt hat
Gruß
Paul
Anzeige
danke für eure hilfe :-)
26.01.2006 21:15:59
bernd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige