/ / vorherige Zellen mit 2 Spalten gleichzeitig kopieren? - Excel, VBA, Excel-VBA

kopiere vorherige Zellen mit 2 Spalten auf einmal? - Excel, VBA, Excel-VBA

Bildbeschreibung hier eingeben

es ist möglich, die Werte von Zellen, 2 Spalten gleichzeitig zu kopieren (die Werte sind in beiden Spalten unterschiedlich = Strings). Im Moment mache ich es separat.

1:

 Do Until ActiveCell.Row >= LastRow
If Trim(ActiveCell.Offset(1, 0)) = "" Then
ActiveCell.Offset(1, 0).Value = ActiveCell
End If
ActiveCell.Offset(1, 0).Select
Loop

und dann wieder für die 3. Spalte

    Cells(FirstRow + 2, 2).Select
Do Until ActiveCell.Row >= LastRow
If Trim(ActiveCell.Offset(1, 0)) = "" Then
ActiveCell.Offset(1, 0).Value = ActiveCell
End If
ActiveCell.Offset(1, 0).Select
Loop

Eigentlich habe ich das unten codiert, es geht gleichzeitig, aber ich habe eine Ahnung, dass es langsam ist

Sub Kopi()
Dim i, y As Integer
For i = 1 To 100
For y = 1 To 100
If Trim(Cells(i + 1, 1)) = "" And Trim(Cells(y + 1, 2)) = "" Then
Cells(i + 1, 1).Value = Cells(i, 1)
Cells(y + 1, 2).Value = Cells(y, 2)
End If

Next y
Next i
End Sub

Antworten:

1 für die Antwort № 1

Ist das was du brauchst? Es durchläuft Ihre leeren Zellen im angegebenen Bereich (A1:B10) und setzt alle Leerzeichen, die dem obigen Wert entsprechen

Sub Test()
Dim rng As Range, r As Range
Set rng = ThisWorkbook.Worksheets("Sheet1").Range("A1:B10").SpecialCells(xlCellTypeBlanks)

For Each r In rng
If Not r.Row = 1 Then r.Value = r.Offset(-1, 0).Value
Next r
End Sub