Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1800to1804
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA mehere Datensätze zum Datum transp,

VBA mehere Datensätze zum Datum transp,
16.12.2020 16:30:59
Benedikt
Hallo zusammen,
ich bin zwar nicht neu bei der VBA Welt, jedoch ist mein Wissen eher rudimentär.
Folgender Sachverhalt/ Problemstellung:
in der Spalte A (ab A3) liegt ein Datensatz eines Monats mit verschiedenen Zeiten in Spalte D (von) und C (bis) vor. Es können mehrere Zeiten zu einem Datum vorliegen. Nun Soll die Spalte A mit der Spalte K verglichen werden und ab Spalte L, M die Zeiten aus Spalte D und C übertragen werden. Auch wenn zu einem Datum mehrere Zeiten vorliegen, sollen in die Splate ab L transponiert werden.
Am liebsten wäre mir eine Lösung über VBA. Ich denke es gibt schon zu diesem einfachen Problem eine Lösung oder die nur leicht zum zuschreiben gilt. Bin für jeden Tipp sehr dankbar:-)
Vielen Dank im Vorfeld!!
Dim Datum_1 As Long
Dim Datum_Vergleich As Long
Dim Zeit_1 As Long
Zeit_1 = 1
For Datum_1 = 1 To Sheets("Rohdaten").Cells(Rows.Count, 1).End(xlUp).Row
For Datum_Vergleich = 1 To Sheets("Rohdaten").Cells(Rows.Count, 1).End(xlUp).Row
With Sheets("Rohdaten")
If .Cells(Datum_1, 1) = .Cells(Datum_Vergleich, 11) Then
.Cells(Zeit_1, 12) = .Cells(Datum_1, 4)
.Cells(Zeit_1, 13) = .Cells(Datum_1, 5)
Zeit_1 = Zeit_1 + 1
End If
End With
Next Datum_Vergleich
Next Datum_1
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA mehere Datensätze zum Datum transp,
16.12.2020 18:03:11
onur
Makros für Blätter, die man nicht vor der Nase hat, zu schreiben, ist wie Blindschach spielen.
Um die Chance auf eine Antwort zu erhöhen, solltest du zumindest eine Beispielsdatei posten.
AW: VBA mehere Datensätze zum Datum transp,
16.12.2020 19:20:11
Yal
Hallo Benedikt,
onur hat recht. Ich habe zwar was gebastelt, aber ob es trifft, was Du erwartest, ist unklar.
Nicht ganz klar, ist was passieren soll, wenn mehrere Einträge dieselbe "Schlüssel" (Spalte K) haben:
_ die neueste überschreibt,
_ die neueste fügt sich hinterher.
Ich habe letzteres umgesetzt.
Sub Kopiere()
Dim ws As Worksheet
Dim Zaehler As Integer
Dim Ai As Long
Dim Ki As Long
Set ws = ThisWorkbook.Worksheets("Rohdaten")
For Ki = ws.Range("K10000").End(xlUp).Row To 3 Step -1
Zaehler = 0
For Ai = 1 To ws.Range("A100000").End(xlUp).Row
If ws.Cells(Ai, 1) = ws.Cells(Ki, 11) Then
If Zaehler = 0 Then
ws.Cells(Ki, 12) = ws.Cells(Ai, 4)
ws.Cells(Ki, 13) = ws.Cells(Ai, 3)
Else
ws.Cells(Ki + Zaehler, 11).Range("A1:D1").Insert
ws.Cells(Ki + Zaehler, 12) = ws.Cells(Ai, 4)
ws.Cells(Ki + Zaehler, 13) = ws.Cells(Ai, 3)
End If
Zaehler = Zaehler + 1
End If
Next Ai
Next Ki
End Sub
Viel Erfolg
Yal
Anzeige
AW: VBA mehere Datensätze zum Datum transp,
17.12.2020 13:25:17
Benedikt
Sorry das ich die Datei vergessen habe. Anbei die Datei .
https://www.herber.de/bbs/user/142400.xlsm
Vielen Dank für euren Input.
Das Makro kopiert nun die Spalte D und E in die Spalte L und M, wenn das Datum in Zeile A mit K übereinstimmt. Jedoch gibt es noch die Bedingung das mehere Zeiten (SPalte D und E) zu einem Datum vorliegen. Diese sollen dann nicht in Spalte L und M sondern in N ´bis W.
Eine weitere Bedingung wäre die Unterscheidung zwischen Arbeit und Pausenzeit.
Vielen Dank im Voraus
AW: VBA mehere Datensätze zum Datum transp,
17.12.2020 14:53:28
Yal
Hallo Benedikt,
vergiss das gesamte Makro-Gedönz. Was Du brauchst, ist eine Pivottabelle:
_ gesamte Bereich B2:Gx markieren (oder entferne die erste Zeile und nehme die Gesamtspalten A:G)
_ Einfügen, Pivottabelle
_ Datum als Zeilenüberschrift,
_ Zeit als Wert (als Summe),
_ Typ als Spaltenüberschrift,
_ oder was auch immer deine Rohdaten ermöglichen
Keine Makro, keine Formel, flexibel und zuverlässig
Viel Erfolg
Yal
Anzeige
AW: VBA mehere Datensätze zum Datum transp,
17.12.2020 14:57:28
Benedikt
HI Yal,
die Rohdaten werden aus einer CsV Datei in die ersten Spalten eingeladen. und danach soll halb automatisch die Auswertung erfolgen. Heißt Pro Tag sollen die Arbeitszeiten und Pausenzeiten übertragen werden.
Die Pivottabelle hilft mir da nicht wirklich weiter,.
Viele Grüße
Benedikt
AW: VBA mehere Datensätze zum Datum transp,
17.12.2020 15:22:25
Yal
Hallo Benedikt,
es hört sich wie der LKW-Fahrer, der nicht unter die Brücke fahren kann, nachdem man ihm vorgeschlagen hat, Luft aus den Reifen abzulassen: "Das Problem ist nicht unten, sondern oben!" (Spass)
Füge einfach den CSV-Inhalt unterhalb. Wenn deine Pivottabelle(PT) auf die Spalte A:G sich bezieht, ist nicht weiteres notwendig als mit rechte Maustaste auf der PT "aktualisieren" zu drücken.
Wenn es tasächlich drum geht, voll automatisch zu arbeiten, lege ein ODBC-Verbindung auf dem Verzeichnis, wo die csv liegen, und lasse die weiterverarbeitende Stelle direkt drauf zugreifen.
Das Datenmodell in den Splaten A:G ist bereit optimal für eine Weiterverarbeitung. Das umzustellen nur um die Summe der Zeit für Pause/nicht Pause, ist irsinnig.
Eventuell kannst Du Power Query anschauen. Die 7 Videos von Excelhero für Power Query sind gut investierte Zeit (1 Std):
https://www.youtube.com/playlist?list=PLy5TtUB84yrN2VVRzp8Tif8bxQKJD_2bo
Wobei für dich die letzte die relevanteste ist.
Viel Erfolg
Yal
Anzeige
AW: VBA mehere Datensätze zum Datum transp,
17.12.2020 14:52:57
Benedikt
Sorry das ich die Datei vergessen habe. Anbei die Datei .
https://www.herber.de/bbs/user/142400.xlsm
Vielen Dank für euren Input.
Das Makro kopiert nun die Spalte D und E in die Spalte L und M, wenn das Datum in Zeile A mit K übereinstimmt. Jedoch gibt es noch die Bedingung das mehere Zeiten (SPalte D und E) zu einem Datum vorliegen. Diese sollen dann nicht in Spalte L und M sondern in N ´bis W.
Eine weitere Bedingung wäre die Unterscheidung zwischen Arbeit und Pausenzeit.
Vielen Dank im Voraus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige