fehlende Daten (Datum) in Datensatz einfügen und dabei Zellen einfügen
#1
Hallo zusammen,


ich sitze zur Zeit an einem Datensatz. Dieser beinhaltet täglich gemessene Werte aus den Jahren 1977-2006. Nun ist es auf Grund der genutzten Technik so, dass nicht an jedem Tag ein Wert gemessen werden konnte und in dem mir zur Verfügung stehenden Datensatz sind nur die wirklich gemessenen Daten eingetragen sind. Somit kommt es vor, dass von einer Zeile zur nächste Tage und sogar Monate fehlen. Dabei gibt es kein System. Es ist vollkommen willkürlich.

Der Aufabu der Tabelle ist recht simpel:

Es gibt eigentlich nur das Datum in Spalte-"A" in DD/MM/YYYY und den gemessenen Wert in Spalte-"B"

Was ich nur möchte, ist dass für jedes fehlende Datum eine neue Zeile eingefügt wird(, damit die gemessenen Daten dem richtig zughörigem Datum in der selben zeile beibehaftet bleiben. Es soll also nnicht nur eine Zelle, sondern eine ganze Zeile eingefügt werden). Für mein Programm muss ich leider für jeden Tag einen Wert zuweisen. Ich benötige somit die fehlenden Tage , damit ich ihnen einen "NoData-Wert" zuweisen kann.

Ich kann jetzt natürlich (so wie ich es angefangen habe), jeden fehlenden Tag einzelnd raussuchen und dort eine neue Zeile einfügen... Aber das ist ja nicht der Sinn der Sache. Dies muss doch auch eleganter zu lösen sein.

Alles was ich bisher über den besten Freund Google finden konnte half mir leider nicht richtig weiter.

Ich hoffe ich konnte das Problem verständlich erklären. Ziel ist es zunächst nur die Zeilen für die fehlenden Tage einzutragen. Das mit den NO-Data-Werten ist danach kein Problem per Hand zu machen.

ich hoffe ich könnt mir ein wenig helfen. =)


P.S.: Achja, es sind ein paar mehr Messstationen, sonst würde ich in dne sauren Apfel beißen und das einmal durchziehen manuell. Müsste die dann bloß immer wiederholen und so würde Tage alleine für diese Aufgabe verloren gehen =(

Bsp:


PHP-Code:
Ist:

Tag                  Wert
01
/07/1977        5
05
/07/1977        5
08
/07/1977        5
09
/07/1977        5

Soll
:

Tag                  Wert
01
/07/1977        5
02
/07/1977        
03
/07/1977        
04
/07/1977        
05
/07/1977        5
06
/07/1977       
07
/07/1977         
08
/07/1977        5
09
/07/1977        5 
Top
#2
Hallo,

wie wäre es in einem neuen Sheet eine Liste mit allen Tagen anzulegen und die Werte dann mit "=sverweis()" zuzuordnen?

mfg
Top
#3
Moin!
Fenneks Vorschlag mal als Makro umgesetzt:
Sub RPP()
Dim lastDate#
lastDate = WorksheetFunction.Max(Columns("A")) - WorksheetFunction.Min(Columns("A")) + 2
With Tabelle1
  .Range("C1") = "Date"
  .Range("C2") = WorksheetFunction.Min(.Columns("A"))
  .Range("D1") = "Value"
  .Range(.Cells(2, "C"), .Cells(lastDate, "C")).DataSeries , xlChronological, xlDay
  With .Range(.Cells(2, "D"), .Cells(lastDate, "D"))
     .Formula = "=IFERROR(VLOOKUP(C2,A:B,2,1),"""")"
     .Copy: .PasteSpecial xlPasteValues
  End With
  .Columns("C").NumberFormat = "DD/MM/YYYY"
  .Range("A:B").Delete
End With
End Sub

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#4
Moin,
ich habe wahrscheinlich auch noch eine Alternative (falls du die "richtige" 2010er Version hast): http://www.excel-ist-sexy.de/luecken-in-zahlenfolgen-fuellen/
Dazu brauchst du Power Query -> http://www.excel-ist-sexy.de/power-query-das-add-in/
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Top
#5
Danke euch! Habe leider erst jetzt Zeit gefunden daran weiterzuarbeiten! Der erste Tipp war schon ausreichend. =)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste