Ich möchte eine einfache (glaube ich!) Do-Schleife für Folgendes ausführen: Mein einfaches Programm funktioniert wie gewünscht, aber ich glaube, es gibt einen einfacheren Weg, da ich es 1000 Mal wiederholen möchte. Vielleicht mit einer Art Schleife? Do-Schleife oder etwas anderes. Kurz gesagt möchte ich:
- kopiere den Inhalt von A1
- Fügen Sie sie in B1 ein
- Zelle C1 kopieren (sie enthält eine einfache Formel, die auf B1 wirkt)
- Kopieren Sie (nur) den „Wert“ von C1 nach D1 (das eine Tabelle mit solchen Werten sein wird).
Ich möchte dies für A1 bis A1000 tun und eine Tabelle mit den Werten D1, D2, ..., D1000 erhalten (möglicherweise als quadratische Tabelle). Die Zellen B1 und C1 bleiben fixiert.
Mein Programm ist unten:
Sub PasteSpecial_Examples()
Range("A1").Copy Range("B1")
Range("C1").Copy
Range("D1").PasteSpecial Paste:=xlPasteValues
Range("A2").Copy Range("B1")
Range("C1").Copy
Range("D2").PasteSpecial Paste:=xlPasteValues
Range("A3").Copy Range("B1")
Range("C1").Copy
Range("D3").PasteSpecial Paste:=xlPasteValues
Range("A4").Copy Range("B1")
Range("C1").Copy
Range("D4").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
Antwort1
Sie möchten eine einfache For...Next-Schleife:
Sub PasteSpecial_Examples()
For i = 1 To 1000
Range("A" & i).Copy Range("B1")
Range("C1").Copy
Range("D" & i).PasteSpecial Paste:=xlPasteValues
Next i
Application.CutCopyMode = False
End Sub