online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon Platin7 vom 11.07.2019, 11:01 Options

Zellen auffüllen!

Hallo Excelspezies!
Ich bräuchte mal wieder Eure Hilfe!
Ich erhalte aus einem System folgende Struktur:


Ist:
Datum Zeitraum Wert 1 Wert 2
01.01.2007 00:00:00 01:00 x1 y1
x2 y2
x3 y3
01:00 02:00 x4 y4
x5 y5
x6 y6
02.01.2007 x7 y7
x8 y8


Um diese (45T-Werte) sinnvoll aufbereiten zu können, bräuchte ich ein Makro, das mir die Leerzellen so auffüllt, wie in dem nachstehenden Beispiel!

Soll:
Datum Zeitraum Wert 1 Wert 2
01.01.2007 00:00:00 01:00 x1 y1
01.01.2007 00:00:00 01:00 x2 y2
01.01.2007 00:00:00 01:00 x3 y3
01.01.2007 01:00 02:00 x4 y4
01.01.2007 01:00 02:00 x5 y5
01.01.2007 01:00 02:00 x6 y6
02.01.2007 01:00 02:00 x7 y7
02.01.2007 02:00 02:00 x8 y8

Vielen Dank für die Mühe im Voraus!
Gruss
Ines


Antwort schreiben

Antwort 1 von Platin7 vom 11.07.2019, 11:09 Options

Sorry, die Ansicht wurde leider zerschossen!

Ist:
Datum Zeitraum Wert 1 Wert 2
01.01.2007 00:00:00 01:00 x1 y1
fehlt fehlt fehlt x2 y2
fehlt fehlt fehlt x3 y3
fehlt 01:00 02:00 x4 y4
fehlt fehlt fehlt x5 y5
fehlt fehlt fehlt x6 y6
02.01.2007 fehlt fehlt x7 y7
fehlt fehlt fehlt x8 y8

Ich hoffe, jetzt erkennt man es etwas besser!
Wirklich schön ist es aber immer noch nicht!

Ines

Antwort 2 von nighty vom 11.07.2019, 11:21 Options

hi ines :-)

wie gewuenscht :-))

gruss nighty

der bereich waere anzupassen,zur zeit "A1:A5"

Sub Auffuellen()
Workbooks(1).Worksheets(1).Range("A1:A5").Replace what:="", replacement:="00:00:00", searchorder:=xlByColumns, MatchCase:=True
End Sub

Antwort 3 von Platin7 vom 11.07.2019, 14:43 Options

Hallo nighty!
Danke für die Anwort! Leider war die Darstellung wohl immer noch zu schlecht!

Stell Dir doch bitte eine Pivot-Tabelle vor, in der die erste Spalte den Tag, die 2. eine Uhrzeit und die nächsten vier Spalten Werte enthalten. Es gibt für den ersten Wert am ersten Tag die Angaben Tag und Uhrzeit. Für die folgenden Werte mit dem gleichen Tag und der gleichen Uhrzeit fehlen jedoch die Angaben.
Diese möchte ich jedoch hinzugefügt haben!
Gruss
Ines

Antwort 4 von nighty vom 11.07.2019, 14:53 Options

hi ines :-)

mit pivottabellen hab ich noch nie gearbeit da muss ich passen,jetzt sind andere user gefragt :-)

gruss nighty

Antwort 5 von Platin7 vom 11.07.2019, 14:57 Options

Hi!
War nur ein Beispiel, um sich die Optik vorzustellen!
Kann ich Dir was mailen, damit Du besser verstehst, was ich möchte?
Gruss
Ines

Antwort 6 von Aliba vom 11.07.2019, 15:06 Options

Hi Platin,

mit einem Makro kann ich Dir leider nicht helfen, aber vielleicht
langt es ja auch, wenn Du quasi ein Duplikat ausfüllen lässt.

Nehmen wir mal an in A1 bis F1 stehen die Überschriften.
Dann in G2 die Formel:

=WENN(A2="";A1;A2) und diese Formel soweit benötigt nach rechts und nach unten kopieren.

CU Aliba

Antwort 7 von Platin7 vom 11.07.2019, 15:14 Options

Hallo Aliba!
Danke für den Versuch!
Leider scheitert Dein Vorschlag schon in der 3. Zeile, da diese ebenfalls leer ist. Leer ist Leer und bleibt dann auch Leer!
Gruss
Ines

Antwort 8 von Aliba vom 11.07.2019, 15:17 Options

Hi Ines,

ich bin ja auch ein Vollidiot, wollte doch was ganz anderes schreiben, nämlich:

=WENN(A2="";G1;A2)

CU Aliba

Antwort 9 von nighty vom 11.07.2019, 15:39 Options

hi all :-)

ich versteh jetzt nur noch bahnhof

mein makro ergaenzt alle leeren zellen des angegebenen bereiches um "00:00:00"

gruss nighty

Antwort 10 von Platin7 vom 11.07.2019, 15:47 Options

Hallo nighty!
Das war aber leider nicht die Anfrage!
Kopier Dir doch bitte die Angaben aus meinem Nachtrag (Antwort 1) in Excel (Importassistent)!
Vielleicht erkennst Du Dann mein Problem! Da, wo "fehlt" steht, ist meine Tabelle leer, soll aber entsprechend gefüllt werder!
Gruss
Ines

Antwort 11 von nighty vom 12.07.2019, 12:39 Options

hi ines :-)

zitat
Da, wo "fehlt" steht, ist meine Tabelle leer

genau das macht das makro wenn du den bereich anpasst

gruss nighty

Antwort 12 von Platin7 vom 12.07.2019, 12:46 Options

Hallo nigthy!
Ich stehe da wohl auf der Leitung!
Meine Tabelle hat die Überschriften in Zeile 1!
Die Gesamte Tabelle befindet sich in den Spalten A bis H und reicht variierend bis ca. Zeile 45000! In den Spalten D bis H sind die Werte und A bis C sollen die Gliederungsstufen sein.
Bitte mach doch noch einen letzten Versuch!
Gruss
Ines

Antwort 13 von Platin7 vom 12.07.2019, 13:00 Options

Hi nochmal!
Das Missverständnis scheint auch zu sein, das nicht "00:00:00" eingefügt werden soll, sonder die entsprechende Gliederungstufe!!!!!!
Gruss
Ines

Antwort 14 von nighty vom 12.07.2019, 13:04 Options

hi ines :-)

vielleicht so,wobei was haben gliederungstufen mit auffuellen zu tun ?

gruss nighty

spalte D bis H
zeile 2 bis ende (Automatische abtastung)
werden alle leerzellen,im makro mit "" angegeben damit "00:00:00" aufgefuellt

Sub Auffuellen()
ThisWorkbook.ActiveSheet.Range("D2:H" & ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row).Replace what:="", replacement:="00:00:00", searchorder:=xlByColumns, MatchCase:=True
End Sub

Antwort 15 von nighty vom 12.07.2019, 13:09 Options

hi ines :-)

jetzt versteh ich glaub ich:-))

doch schick mir lieber eine kleine mustertabelle zu

mit beispiel
vorher/nachher

oberley@t.online.de
mit aussagefaehigen betreff bitte

gruss nighty

Antwort 16 von Platin7 vom 12.07.2019, 14:11 Options

Hi!
Die Datei ist unterwegs!
Gruss
Ines

PS: t-online.de doch sicher!

Antwort 17 von nighty vom 12.07.2019, 15:26 Options

hi ines :-)

wie gewünscht :-))

gruss nighty

alle drei module gehören in ein allgemeines modul

das modul Auffuellen ist das startmodul

Option Explicit
Sub Auffuellen()
Call EventsOff
Dim puffer1 As Variant, puffer2 As Variant, puffer3 As Variant
Dim zaehler As Long, zeile As Long
zeile = ThisWorkbook.ActiveSheet.Cells(Rows.Count, 4).End(xlUp).Row
ReDim matrix(zeile, 3) As Variant
matrix() = Range(Cells(1, 1), Cells(zeile, 3))
For zaehler = 4 To zeile
If matrix(zaehler, 1) <> "" Then
puffer1 = matrix(zaehler, 1)
Else
matrix(zaehler, 1) = puffer1
End If
If matrix(zaehler, 2) <> "" Then
puffer2 = matrix(zaehler, 2)
Else
matrix(zaehler, 2) = puffer2
End If
If matrix(zaehler, 3) <> "" Then
puffer3 = matrix(zaehler, 3)
Else
matrix(zaehler, 3) = puffer3
End If
Next zaehler
ThisWorkbook.ActiveSheet.Range(Cells(1, 1), Cells(zeile, 3)) = matrix()
Call EventsOn
End Sub


Public Sub EventsOff()
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
End Sub


Public Sub EventsOn()
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End Sub

Antwort 18 von Platin7 vom 12.07.2019, 16:51 Options

Hallo nighty!
Sicher nur ein kleiner Fehler von mir!

End If
Next zaehler


ThisWorkbook.ActiveSheet.Range(Cells(1, 1), Cells(zeile, 3)) = matrix()

'Hier hängt es leider - Laufzeitfehler!

Call EventsOn
End Sub


Gruss
Ines

Antwort 19 von nighty vom 12.07.2019, 17:15 Options

hi ines :-)

deine beispieltabelle lief mit excel2000

da es bei der zuweisung des array keinen fehler gab (verbundene zellen,geschuetzte bereiche etc.) duerfte es bei der rueckschreibung zu den zellen eigentlich keinen fehler geben

hier deine beispieldatei die einwandfrei laeuft,probier mal

http://www.netupload.de/detail.php?img=4e7f78573580bce2eb73658f9267...

gruss nighty

Antwort 20 von nighty vom 12.07.2019, 19:51 Options

hi ines :-)

wo haengt es

gruss nighty

in der zeile

ThisWorkbook.ActiveSheet.Range(Cells(1, 1), Cells(zeile, 3)) = matrix()

oder in der

Call EventsOn

Ähnliche Themen

Zellen formatieren ( Zellen verbinden )
manu661  16.02.2007 - 200 Hits - 3 Antworten

Zellen verbinden in Excel - nicht möglich
canis  06.07.2007 - 291 Hits - 2 Antworten

Zellen mit textinhalt zusammenfassen???
Anlud  30.08.2007 - 103 Hits - 7 Antworten

in excel zellen verbinden, ohne inhalte zu löschen
mafug  21.09.2007 - 273 Hits - 1 Antwort

Zellen nach gleichem Text überprüfen
Prain  04.10.2007 - 127 Hits - 9 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026