Xl XP: Spalten auffüllen

21/01/2008 - 22:45 von Ingrid Kutsche | Report spam
Liebe Leute,

ich habe eine Tabelle, die durch Zellbezüge gefüllt wurde mit Text und
Nullen. Diese Formelergebnisse Null möchte ich ersetzen durch den Text,
der in der Zelle oberhalb der Nullen steht.

Und wieder mal krieg ich die Teile, die ich gefunden habe, nicht zusammen:

Vor etlicher Zeit habt Ihr mir ein Makro gebastelt zum Auffüllen der
Lücken einer Spalte mit jeweils dem obersten Wert:

Public Sub Auffüllen()
Dim loLetzte As Long
Dim loZeile As Long

loLetzte = ActiveSheet.UsedRange.Rows.Count
loZeile = 2

Do
If IsEmpty(Cells(loZeile, 1)) Then
Cells(loZeile, 1) = Cells(loZeile - 1, 1)
End If
loZeile = loZeile + 1
Loop Until loZeile = loLetzte + 1

End Sub

Das kann ich abwandeln auf If Cells(loZeile, 1) 0 Then...
Das funktioniert auch wunderbar, übertràgt aber leider nur Zahlen. Bei
Text passiert gar nix.

In einem andern Forum hab ich Thomas' Tipp für _leere_ Zellen gefunden

Sub Auffuellen()
With Active***.Range("A:A") 'Hier den Bereich angeben
.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
.Value = .Value
End With
End Sub

Das kopiert Text wunderbar; allerdings eben nur, wenn die Zellen leer sind.

Wie ersetze ich nun meine Nullen durch den Text "von oben"?

Danke euch!

Ingrid
 

Lesen sie die antworten

#1 thomas.ramel
22/01/2008 - 07:49 | Warnen spam
Grüezi Ingrid

Ingrid Kutsche schrieb:
ich habe eine Tabelle, die durch Zellbez�ge gef�llt wurde mit Text und
Nullen. Diese Formelergebnisse Null möchte ich ersetzen durch den Text,
der in der Zelle oberhalb der Nullen steht.



Lücken hat es keine in der Spalte?

In einem andern Forum hab ich Thomas' Tipp für _leere_ Zellen gefunden



:-))

Das kopiert Text wunderbar; allerdings eben nur, wenn die Zellen leer sind.

Wie ersetze ich nun meine Nullen durch den Text "von oben"?



Ersetze vorgàngig die Nullen mit 'Leer' und füge dann den obigen Code
ein - kombiniert sieht das dann z.B. so aus:

Sub Auffuellen_0()
With ActiveSheet.Range("A:A") 'Hier den Bereich angeben
.Replace What:="0", _
Replacement:="", _
LookAt:=xlWhole
.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
.Value = .Value
End With
End Sub


Mit freundlichen Grüssen

Thomas Ramel
- MVP für MS-Excel -

Ähnliche fragen