Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1268to1272
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

Automatisierung einer Auswertung

Automatisierung einer Auswertung
grossermanitu
Hallo allerseits,
ich bekomme jeden Monat eine Tabelle (Im Anhang ein Auszug der letzten 3 Monate davon) in dieser in Pivotform Daten stehen. Diese Tabelle liegt auf einem Server auf dem jeder Gebietsleiter die Daten per Hand in die vorgegebenen Zellen hinzufügt. Ab und zu kommen neue Gebiete hinzu. Jetzt möchte anhand dieser Tabelle Auswertungen erstellen. Das ist in dieser Form nicht möglich. Die Form der Exceltabelle zu ändern ist leider auch nicht möglich.
Ich denke die einzige Möglichkeit daraus Auswertungen zu erstellen ist: Die Ausgangstabelle in einzelne Datensätze umzuwandeln und diese dann mit der Excel-Pivot-Funktion auszuwerten. Exemplarisch für Gebiet A und B habe ich das im 2. Tabellenblatt erstellt. (Andere Ideen sind gerne willkommen.)
Jetzt bin ich von Natur ein Mensch der wiederkehrende Aufgaben gerne automatisiert. Besonders bei solch hohem Copy-and-Paste-Aufwand.
Hat hierzu jemand eine Idee wie ich das in diesem Fall durchführen könnte? VBA-Kenntnisse sind bei mir OK. Ein Lösungsansatz würde mir demnach schon weiterhelfen. Danke und Gruß Thomas
https://www.herber.de/bbs/user/80864.xlsx

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Automatisierung einer Auswertung
05.07.2012 22:54:00
fcs
Hallo Thomas,
hier mein Vorschlag.
Ich bin mal davon Ausgegangen, dass in jedem Monat in Spalte A in der 1.Zeile der Eintrag Gebiet vorhanden ist. War in deiner Beispieldatei für März nicht der Fall.
Die Spalte mit den Item-Nrn. hab ich mit reingenommen, um im Nachlauf bedingte Formatierungen setzen zu können. Außerdemkann man darüber auch einfach Auswertungen fahren und muss sich nicht an die langen Beschriftungen in Spalte A halten.
Gruß
Franz
'Erstellt unter Excel 2010
Sub MakeAuswertungsdaten()
Dim wbkQ As Workbook, wksQ As Worksheet
Dim wbkZ As Workbook, wksZ As Worksheet
Dim lngZeileQ As Long, lngSpalteQ As Long, lngOffset As Long
Dim lngZeileZ As Long, lngSpalteMonat As Long
Dim datMonat As Date, strGebiet As String
Dim intItem As Integer, arrAuswahl(1 To 8) As String
Const lngZeileZT = 1 'Zeile mit SPaltentiteln in Zieltabelle
Application.ScreenUpdating = False
Set wbkQ = ActiveWorkbook       'Arbeitsmappe mit den Ausgangsdaten
Set wksQ = wbkQ.Worksheets(1)   'Tabellenblatt mit den Ausgangsdaten
'Arbeitsmappe mit 1 Tabellenblatt für auswertbare Daten anlegen
Set wbkZ = Workbooks.Add(Template:=xlWBATWorksheet)
Set wksZ = wbkZ.Worksheets(1)
wksZ.Name = "Data"
'Spaltentitel und Formatierungen in Zieltabelle
With wksZ
lngZeileZ = lngZeileZT
.Cells(lngZeileZ, 1).Value = "Auswahl"
.Cells(lngZeileZ, 2).Value = "Anzahl"
.Cells(lngZeileZ, 3).Value = "Gebiet"
.Cells(lngZeileZ, 4).Value = "Monat"
.Cells(lngZeileZ, 5).Value = "Item"
.Columns(4).NumberFormat = "DD.MM.YYYY"
.Columns(2).NumberFormat = "0"
.Columns(5).NumberFormat = "0"
Cells(lngZeileZ + 1, 1).Select
ActiveWindow.FreezePanes = True
End With
'Daten aus Ausgangsdaten in Zieltabelle übertragen
With wksQ
For lngZeileQ = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row
If .Cells(lngZeileQ, 1) = "Gebiet" Then
'Monatsdatum ermitteln
lngSpalteMonat = .Cells(lngZeileQ, .Columns.Count).End(xlToLeft).Column
datMonat = .Cells(lngZeileQ + 2, lngSpalteMonat).Value
'Gebiete im Monat abarbeiten
For lngSpalteQ = 2 To lngSpalteMonat - 1
strGebiet = .Cells(lngZeileQ, lngSpalteQ).Value
'Die 8 Datenzeilen für Gebiet auswerten und ins Zielblatt übertragen
For intItem = 1 To 8
Select Case intItem
Case 1 To 3
lngOffset = intItem + 1
If lngZeileZ =5)"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Bold = False
.Italic = True
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Range("A1").Select
End Sub

Anzeige
AW: Automatisierung einer Auswertung
06.07.2012 11:17:55
grossermanitu
Hui. Thomas. Das ist mehr als ich erwartet habe. Ich werde das mir am Wochenende anschauen und versuchen auf meinen Fall zu übertragen. Ich danke Dir schonmal vorab für Deinen Einsatz.
AW: Automatisierung einer Auswertung
13.07.2012 16:19:50
grossermanitu
Hui. Thomas. Das ist mehr als ich erwartet habe. Ich werde das mir am Wochenende anschauen und versuchen auf meinen Fall zu übertragen. Ich danke Dir schonmal vorab für Deinen Einsatz.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige