Microsoft Excel

Herbers Excel/VBA-Archiv

Range

Betrifft: Range von: Fabienne
Geschrieben am: 30.08.2004 12:22:02

Hallo zusammen!
Wie muss ich den Code verändern, dass ich im Range anstelle von C141 neu "C" & (i - 1) * 140 + 1 habe und anstelle C157 neu "C" & (i - 1) * 140 + 103????
Merci!


Range("C141:C157").Select
Selection.Copy
Range("E141").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Range("A141:D157").Select
Selection.ClearContents
Range("H154").Select
End Sub

  


Betrifft: AW: Range von: Uduuh
Geschrieben am: 30.08.2004 13:08:35

Hallo,
Range(Cells((i-1)*140+1,3),cells((i-1)*140+103,3))

Gruß aus'm Pott
Udo


  


Betrifft: AW: Range von: Fabienne
Geschrieben am: 30.08.2004 14:08:55

Danke schön!

Warum denn ,3 ?


  


Betrifft: AW: Range von: Uduuh
Geschrieben am: 30.08.2004 14:12:35

Hallo,
wegen der Spalte
Cells(Zeile,Spalte)

Gruß aus'm Pott
Udo


  


Betrifft: AW: Range von: P@ulchen
Geschrieben am: 30.08.2004 14:14:53

Hi Fabienne,

die Syntax für Cells sieht folgendermaßen aus:

Cells(Zeilenindex, Spaltenindex)

Den Zeilenindex gibst Du ja durch die Formel vor. Der Spaltenindex ist 3, da Du ja Spalte C kopieren möchtest, also die 3.Spalte...



Gruß aus Leipzig
P@ulchen

Das Forum lebt auch von den Rückmeldungen !


  


Betrifft: AW: Range von: P@ulchen
Geschrieben am: 30.08.2004 14:09:22

Hi Fabienne,

ergänzend zu Udo´s Vorschlag kannst Du Deinen ganzen Code verkürzen (ohne Select):

Range(Cells((i - 1) * 140 + 1, 3), Cells((i - 1) * 140 + 103, 3)).Copy Cells((i - 1) * 140 + 1, 3)
Range(Cells((i - 1) * 140 + 1, 1), Cells((i - 1) * 140 + 103, 4)).ClearContents



Gruß aus Leipzig
P@ulchen

Das Forum lebt auch von den Rückmeldungen !


  


Betrifft: AW: Range von: Fabienne
Geschrieben am: 30.08.2004 14:23:56

Vielen herzlichen Dank!!!!!
Ohne euch würd ich es nie hinkriegen!
LG Fabienne


  


Betrifft: AW: Range von: Fabienne
Geschrieben am: 30.08.2004 14:56:06

Ich hab nochmals ne Frage an euch beide!

Ich kriegs trotz allem nicht ganz hin.

Ich möchte eigentlich alle Werte die sich in Spalte 3 befinden (die Werte in Spalte 3 sind zusammengesetzt aus Spalte 1 und 2) entweder in Spalte 4 haben, oder noch besser in Spalte 1.

Hab die beiden Codes ausprobiert, aber ich bekomm immernoch Fehlermeldungen zurück.



1) Range(Cells((i - 1) * 140 + 1, 3), Cells((i - 1) * 140 + 103, 3)).Select
Selection.Copy
Range(Cells((i - 1) * 140 + 1, 4)).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Range(Cells((i - 1) * 140 + 1, 1), Cells((i - 1) * 140 + 103, 3)).Select
Selection.ClearContents

Laufzeitfehler 1004



2) Range(Cells((i - 1) * 140 + 1, 3), Cells((i - 1) * 140 + 103, 3)).Copy Cells((i - 1) * 140 + 1, 4)
Range(Cells((i - 1) * 140 + 1, 1), Cells((i - 1) * 140 + 103, 3)).ClearContents

keine Fehlermeldung, aber es wird alles gelöscht!

Sorry, aber ich check das nicht so ganz!


  


Betrifft: AW: Range von: Fabienne
Geschrieben am: 30.08.2004 15:21:07

Habs jetzt selber noch hingekriegt!

falls später mal jemand dasselbe Problem hat, hier der Code:

Range(Cells((i - 1) * 140 + 1, 3), Cells((i - 1) * 140 + 103, 3)).Select
Selection.Copy
Range(Cells((i - 1) * 140 + 1, 1), Cells((i - 1) * 140 + 103, 1)).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Range(Cells((i - 1) * 140 + 1, 2), Cells((i - 1) * 140 + 103, 2)).Select
Selection.ClearContents
Range(Cells((i - 1) * 140 + 1, 3), Cells((i - 1) * 140 + 103, 3)).Select
Selection.ClearContents


  


Betrifft: AW: Range von: P@ulchen
Geschrieben am: 30.08.2004 16:00:57

Hi Fabienne,

Du wolltest ja ursprünglich alles in Spalte 4 kopieren und dann 1-3 löschen...
Spalte 3 nach Spalte 1 kopieren und dann Spalten 2 und 3 löschen kannst Du auch so:

Range(Cells((i - 1) * 140 + 1, 3), Cells((i - 1) * 140 + 103, 3)).Copy Cells((i - 1) * 140 + 1, 1)
Range(Cells((i - 1) * 140 + 1, 2), Cells((i - 1) * 140 + 103, 3)).ClearContents



Gruß aus Leipzig
P@ulchen

Das Forum lebt auch von den Rückmeldungen !