Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1688to1692
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

Rohdaten umwandeln per Makro

Rohdaten umwandeln per Makro
06.05.2019 10:11:37
Denys
Hallo liebe Excelanten,
leider sind unsere VBA Kenntnisse nicht ausreichend um sehr kurzfristig ein für den einen oder anderen hier einfaches Problem zu lösen.
Wir führen eine Umsatzliste welche wir automatisiert in zwei Vorjahresvergleiche überführen möchten.
In Spalte 1 stehen die Standorte und in den Spalten 2 bis unendlich die Perioden.
Nun möchten wir in der Ausgabe, dass jeweils im folgejahr 2019 auch die Perioden gelöscht werden die es nicht in 2018 gab. Weiterhin sollen auch in beiden Jahren die ersten drei Perioden gelöscht werden.
Beispiel: Erster Umsatz im Mai 2018 = Folgende Werte der Monate in der entsprechenden Zeile löschen: Mai 2018 Juni 2018 Juli 2018 sowie Januar bis einschließlich Juli 2019. Ich habe eine Datei angehangen und möchte diejenige oder denjenigen der das Problem für uns löst mit einem Gutschein von uns belohnen ;-). (Kleiner Tipp - Burger, Märchen und leckere Cocktails)
Ganz herzlichen Dank vorab
Lieben Gruß
Denys
https://www.herber.de/bbs/user/129612.xlsx

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Rohdaten umwandeln per Makro
06.05.2019 10:13:44
Hajo_Zi
Hallo Denys,
das geht nicht, da eine XLSX Datei kein Makro enthalten kann.
Ich sehe keinen Grund eine Datei 2x zu speichern. Ich führe keine Liste unter welchem Dateinamen ich die Datei gespeichert habe.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
AW: Rohdaten umwandeln per Makro
06.05.2019 16:47:06
Daniel
Hallo Denys,
vielleicht stehe ich auf dem Schlauch, aber ich werde aus eurer Beschreibung nicht schlau. Was soll wann gelöscht werden? Das Beispiel im Text passt auch nicht mit eurer Ausgabe in der Beispieldatei zusammen.
Vielleicht beschreibt ihr kurz, was ihr WARUM erreichen wollt. Vielleicht kann man es dann besser nachvollziehen?
Grüße
Daniel
Anzeige
AW: Rohdaten umwandeln per Makro
08.05.2019 10:32:25
Denys
Hallo Daniel,
vielen Dank für die Rückmeldung. Ich versuche es mal besser zu Umschreiben.
Wenn wir die Entwicklung von Standorten / Umsatzperioden vergleichen möchten um die bereinigte Performance zu bewerten können wir das nur auf bestehende Fläche tun.
Beispiel: Wir haben die Umsätze bis Juli 2019 eingetragen und der Standort hat im Februar 2018 eröffnet. In diesem Fall bereinigen wir das Jahr 2018 um Februar, März, April (weil eine neue Eröffnung nicht das eingependelte Geschäft widerspiegelt) sowie um die Monate August bis Dezember 2018 (weil diese schließlich noch nicht für 2019 verfügbar sind. Somit würden wir für diesen Standort nur die Monate Mai, Juni, Juli 2018 zu Mai, Juni, Juli 2019 vergleichen. Diesen Vergleich nennt man "like for like" oder zu deutsch auf "bestehende Fläche" vergleichen.
Ein ähnliches Szenario ist in der Exceldatei zu finden. Nur weiß ich nicht die ich diese Bereinigung per Makro durchführen kann ;/.
Danke für deine Mühe!
BG
Denys
Anzeige
AW: Rohdaten umwandeln per Makro
08.05.2019 13:55:59
Daniel
Ah das macht doch gleich viel mehr Sinn, verstehe.
Dieser Code produziert euer Wunschergebnis. Müsst mal schauen, ob das auf alle Fälle passt. Sonst meldet euch nochmal.
Sub Jahresabgleich()
Dim Zelle As Range
Dim i As Long
For Each Zelle In ActiveSheet.UsedRange.Columns(1).Cells
i = 1
Do While Zelle.Offset(0, i).Value = ""
If Zelle.Offset(0, i + 1).Value  "" Then
Range(Zelle.Offset(0, i + 1), Zelle.Offset(0, i + 3)).Clear
Exit Do
End If
i = i + 1
Loop
Next Zelle
For Each Zelle In ActiveSheet.UsedRange.Columns(1).Cells
If Zelle.Row  1 Then
For i = 2 To 13
If Cells(Zelle.Row, i) = "" Then Cells(Zelle.Row, i + 12).Clear
If Cells(Zelle.Row, i + 12) = "" Then Cells(Zelle.Row, i).Clear
Next i
End If
Next Zelle
End Sub
Viel Spaß damit
Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige