Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeileninhalte auffüllen

Forumthread: Zeileninhalte auffüllen

Zeileninhalte auffüllen
15.01.2008 10:03:00
David
Ich möchte in einer Spalte, in der untereinander unregelmäßig verschiedenste Werte (Zahlen, Text) mit einigen Lücken stehen, auffüllen lassen.
650
Leer
Leer
651
Leer
652
Leer
Leer
Leer
**
Leer
...
Immer dort, wo die Zelle leer ist, soll der Wert der darüber liegenden Zelle eingefügt werden.
Ich habe dazu folgendes Makro geschrieben, dass aber leider nicht funzt:
  • 
    Sub Zeilen_auffüllen()
    Dim Zeile As Long, inhalt As Integer, wks As Worksheet
    Set wks = Worksheets("asset retirements")
    With wks
    'in Spalte A bis zur letzen Zeile alle Zellen prüfen
    For Zeile = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row
    If Cells(Zeile, 1).Value = "" Then Cells(Zeile, 1).Value = Cells(Zeile - 1, 1).Value
    Next
    End With
    End Sub
    


  • Der Teil hinter dem "THEN" ist wohl falsch. Die Range-Methode kann ich leider nicht anwenden, da ich keine A1-Zellbezüge habe. Könnt ihr vielleicht meinen Fehler verbessern?
    Danke.
    Gruß
    David

    Anzeige

    8
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Zeileninhalte auffüllen
    15.01.2008 10:30:52
    Rudi
    Hallo,
    vor cells fehlt jeweils ein .
    If .Cells(Zeile, 1).Value = "" Then .Cells(Zeile, 1).Value = .Cells(Zeile - 1, 1).Value
    Gruß
    Rudi
    Eine Kuh macht Muh, viele Kühe machen Mühe

    AW: Zeileninhalte auffüllen
    15.01.2008 10:38:39
    David
    Ok, das geht. Komischerweise ist die Abarbeitung seeeeehr langsam, ich kann im halbsekunden-Takt zusehen, wie die Zellen gefüllt werden. Ist das normal?

    Anzeige
    AW: Zeileninhalte auffüllen
    15.01.2008 10:51:39
    Rudi
    Hallo,
    
    Sub Zeilen_auffüllen_schnell()
    Dim Zeile As Long, arrTmp
    With Worksheets("asset retirements")
    arrTmp = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp))
    For Zeile = 1 To UBound(arrTmp)
    If arrTmp(Zeile, 1) = "" Then arrTmp(Zeile, 1) = arrTmp(Zeile - 1, 1)
    Next
    .Range(.Cells(1, 1), .Cells(UBound(arrTmp), 1)) = arrTmp
    End With
    End Sub
    


    Gruß
    Rudi
    Eine Kuh macht Muh, viele Kühe machen Mühe

    Anzeige
    AW: Zeileninhalte auffüllen
    15.01.2008 10:41:28
    David
    Übrigens:
    Danke für die schnelle Hilfe.

    AW: Zeileninhalte auffüllen
    15.01.2008 10:30:54
    FM
    Hallo,
    also du könntest mal folgendes versuchen:
    
    Sub ausfuellen()
    Dim scell
    For scell = 1 To 100 Step 1 '100 mal als angenommener Wert für die Anzahl der zeilen
    If IsEmpty(Sheets(1).Cells(scell, 1).Value) Then
    Sheets(1).Cells(scell, 1).Value = Sheets(1).Cells(scell - 1, 1)
    End If
    Next scell
    End Sub
    


    beim Befehl: .cells(scell,1) musst du natürlich den Zahlenwert wählen je nachdem welche Spalte du nimmst. Also 1 = Spalte 1 , 2 = Spalte 2 usw...

    Anzeige
    AW: Zeileninhalte auffüllen
    15.01.2008 10:40:00
    David
    sieht auch "funktionierend" aus, da es aber mit dem ersten Tip schon geklappt hat, merke ich mir das für's nächste Mal.
    Danke.

    AW: Zeileninhalte auffüllen
    15.01.2008 10:34:00
    Mac4
    Hallo David,
    warum VBA?
    Markiere den bereich - F5 - Inhalte - Leerzellen - OK
    Dann in den Formelleiste = und Klick auf die über der erste Leerzelle liegenden Zelle - das Ganze mit Strg+Enter abschließen!
    Marc

    Anzeige
    AW: Zeileninhalte auffüllen
    15.01.2008 10:52:00
    David
    Warum? Weil ich nie auf die Idee käme, dass so etwas komplexes in Excel selbst zu realisieren geht! :-)
    Auf jeden Fall funzt das so wie ich es brauche und ist super schnell.
    Tausend Dank.
    ;

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Entdecke mehr
    Finde genau, was du suchst

    Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

    Suche nach den besten Antworten
    Unsere beliebtesten Threads

    Entdecke unsere meistgeklickten Beiträge in der Google Suche

    Top 100 Threads jetzt ansehen
    Anzeige