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 № 1Ist 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