Zeilen und Spalten vervollständigen
Ausgangslage - Was tut dieser Code-Schnipsel?
Vielleicht kennen Sie diese Situation auch: Sie haben eine Tabelle und in einer Zeile oder Spalte fehlen
Einträge, die Sie automatisch vervollständigen wollen.
Hier ein visualisiertes Beispiel:
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Beispiel A | ||||
| 2 | |||||
| 3 | |||||
| 4 | Beispiel B | ||||
| 5 | |||||
| 6 | |||||
| 7 | |||||
| 8 | Beispiel C | ||||
| 9 | |||||
| 10 |
Und das Ergebnis nach dem Vervollständigungsmakro sollte so aussehen:
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Beispiel A | ||||
| 2 | Beispiel A | ||||
| 3 | Beispiel A | ||||
| 4 | Beispiel B | ||||
| 5 | Beispiel B | ||||
| 6 | Beispiel B | ||||
| 7 | Beispiel B | ||||
| 8 | Beispiel C | ||||
| 9 | Beispiel C | ||||
| 10 | Beispiel C |
Für diese Vervollständigungsarbeit finden Sie folgend zwei Makros: Einmal für Spalten- und einmal für Zeilen-Vervollständigung. Markieren Sie die zu vervollständigende Zeile/Spalte und starten Sie das Makro.
Ergebnisse statt Aufwand & Arbeit?
Wir liefern Ergebnisse - Schicken Sie uns kurz Ihre Datei und Ihre Wünsche; wir integrieren den notwendigen Code professionell, beheben ggf. vorhandene Fehler, machen optional ein Code-Review, liefern bei Bedarf Performance-Optimierungen & setzen gewünschte Erweiterungen effizient für Sie um (und das zum Festpreis nach kurzer Sichtung).
Express-Service beauftragen
Der Quelltext
Option Explicit
' Original-Quelltext unter: https://www.online-vba.de/zeilen-und-spalten-vervollstaendigen
' Express-Hilfe für VBA unter https://www.online-vba.de/vba-expresshilfe
' Es gelten die Nutzungsbedingungen von Online-VBA.de
Public Sub OVBAde_ZeilenNachUntenVervollstaendigen()
Dim oRow As Object
For Each oRow In Selection.Rows
If Trim(CStr(Cells(oRow.Row, Selection.Column).Value)) = "" And oRow.Row <> Selection.Row Then
Cells(oRow.Row, Selection.Column).Value = Cells(oRow.Row - 1, Selection.Column).Value
End If
Next oRow
Set oRow = Nothing
End Sub
Public Sub OVBAde_SpaltenNachRechtsVervollstaendigen()
Dim oCol As Object
For Each oCol In Selection.Columns
If Trim(CStr(Cells(Selection.Row, oCol.Column).Value)) = "" _
And oCol.Column <> Selection.Column Then
Cells(Selection.Row, oCol.Column).Value = Cells(Selection.Row, oCol.Column - 1).Value
End If
Next oCol
Set oCol = Nothing
End Sub
Anmerkungen und Hinweise
Dieser Codeschnipsel wurde geschrieben von Marc Wershoven im Jahr 2013.
Die Nutzung erfolgt auf eigene Gefahr.
Bitte denken Sie immer zuerst an eine ausreichende Datensicherung.
Wir können keinen kostenlosen Support anbieten.
Es gelten unsere Nutzungsbedingungen.
