Excel Auswertung

  • #1
P

Pc-Maus

Bekanntes Mitglied
Themenersteller
Dabei seit
05.11.2001
Beiträge
73
Reaktionspunkte
0
Ort
Weinheim
:mad:
Hallo Ihr Lieben,

ich habe folgendes Excel Problem.
ich habe eine tabelle mit datumswerten viele sind gleich (Projektabschluss) einige sind aber komplett andere.
Wie kann ich nun in dieser spalte ausgeben lassen wieviele unterschiedliche Datums (was ist die mehrzahl von Datum ??? )
ich in der spalte habe.?
vielleicht hat jemand ne ahnung. ich arbeite mit excel XP aber das ist denke ich bei der frage nicht entscheident.
vielen dank schonmal

gruss
pc-maus
 
  • #2
Hi PC-Maus,

als Anlage ein Makro, welches die gewünschte Auswertung durchführt.

Füge mittels des VB-Editors(Alt+F11) ein Modul in deine Arbeitsmappe ein und kopiere den Makro hinein.
Dann kehrst Du nach Excel zurück. Dort markierst Du die Datumszellen und führst dann unter Extras->Makro->Makros den Makro 'StatistikDatum' aus.

Der Makro fügt ein Tabellenblatt an, das die Datumsangaben und ihre Häufigkeit innerhalb der Selektion auflistet.

Gruß Matjes :)

Code:
Option Explicit

Sub StatistikDatum()
'die selektierten(markierten) Zellen werden nach Datumsangaben durchsucht.
'Auf einem angefügten Blatt wird
'jedes erkannte Datum und seine Häufigkeit ausgegeben

Const c_BlattName As String = Statistik_Datum
Dim Zelle As Range
Dim ws As Worksheet, ws_a As Worksheet
Dim l_row As Long, l_ColCount As Long
Dim b_gefunden As Boolean

'*** aktives Blatt merken
  Set ws_a = ActiveSheet

'*** altes Blatt Statistik_Datum löschen, wenn vorhanden
On Error Resume Next
Application.DisplayAlerts = False
ActiveWorkbook.Worksheets(c_BlattName).Delete
Application.DisplayAlerts = True

'*** neues Ergebnisblatt an Ende anfügen
  ActiveWorkbook.Worksheets.Add After:=ActiveWorkbook. _
                                      Worksheets(ActiveWorkbook.Worksheets.Count)
  Set ws = ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count)
'*** Beschriftung
  ws.Name = c_BlattName
  ws.Cells(1, 1) = Datum: ws.Cells(1, 1).Font.Bold = True
  ws.Cells(1, 2) = Häufigkeit: ws.Cells(1, 2).Font.Bold = True
  l_ColCount = 1
'*** alle markierten zellen auswerten
  ws_a.Activate
  For Each Zelle In Selection
    If IsDate(Zelle) Then
      b_gefunden = False
      For l_row = 2 To l_ColCount
        If Zelle.Value = ws.Cells(l_row, 1).Value Then
        'Datum gefunden -> Abbruch der Suchschleife
          b_gefunden = True: Exit For
        End If
      Next l_row
      If b_gefunden Then 'Datum bereits vorhanden -> Häufigkeit+1
        ws.Cells(l_row, 2).Value = ws.Cells(l_row, 2).Value + 1
      Else 'Datum noch nicht vorhanden -> Datum eintragen, Häufigkeit=1
        ws.Cells(l_row, 1).Value = Zelle.Value
        ws.Cells(l_row, 2).Value = 1
        l_ColCount = l_ColCount + 1
      End If
    End If
  Next
  ws.Columns(1).AutoFit
  ws.Columns(2).AutoFit
End Sub
 
  • #3
:eek: :eek: :eek: :eek:
Vielen Dank

ich finde es unfassbar wie man soetwas so schnell zaubern kann. Ich habe gedacht esa ginge vielleicht mit Filtern
ich danke dir recht herzlich

pc-maus
 
  • #4
Geht natürlich nix über ein elegantes Makro, aber es gibt auch noch 2 Möglichkeiten für die Hausfrau:

1. Daten > Filter > Autofilter
Dann entstehen in der Kopfzeile kleine Buttons. In der entsprechenden Spalte drückst du den Button. In der Auswahlliste wählst du dann ein Datum aus. Dann kriegst du alle Datensätze mit den ausgewählten Werten in der Spalte angezeigt.
Unten links in der Statuszeile wird jetzt die Anzahl angezeigt (35 von 125 Datensätzen gefunden). Falls hier nix angezeigt wird, mußt du unter Extras > Optionen > Berechnen Automatisch ankreuzen.

2. mittels einer Pivot-Abfrage.
- Mitten in deine Tabelle klicken
- Daten > Pivot-Tabellenbericht aufrufen (Pivot-Tabelle basierend auf Excel sollte standardmäßig markiert sein) --> Weiter
- deine gesamte Tabelle ist jetzt markiert. Die Tabelle darf keine leeren Trennzeilen haben. Wenn das nicht so sein soll, dann mußt du zumindest die Leerzellen einer Spalte mit jeweils einem Punkt füllen. --> Weiter
Jetzt den Spaltentitel für die Datümer ( ;)) mit der Maus in das Feld Zeile schieben und dann nochmal in das Feld Daten schieben. Vor dem Spaltentitel muß Anzahl stehen - das kann bei Doppelklick aus einer Liste ausgewählt werden. --> Weiter
- Neues Blatt auswählen. --> Ende.
Damit kriegst du eine Aufstellung aller Werte dieser Spalte mit ihrer jeweiligen Anzahl.
 
  • #5
Von wegen HAUSFRAU :mad:

mit pivot tabellen hab ich eh so meine probleme. hast du irgendwo eine anleitung für den umgang mit pivot tabellen allgemein ?

gruss
die Hausfrau
 
  • #6
Ola,

@klexy: Hausfrau war daneben :eek:

Aber prinzipiell hat er recht: Hast Du das Verfahren mal versucht, es ist richtig beschrieben ...
 
  • #7
Einspruch, Euer Ehren !
Hausfrau bin ich selber (zumindest zeitweise) und habe Pivot und Filterfunktionen als leichter verständlich für mich entdeckt.
Bei Makros bricht mir immer das Hirn ab.

Außer der internen Excel-Hilfe kenne ich zu Pivot auch nichts Erhellendes. Und ob diese Hilfe immer so erhellend ist, wage ich zu bezweifeln. Ich hab halt aweng rumprobiert und einige sinnvolle Ergebnisse erzielt. Ich schau mal bei Gelegenheit in Google. Vielleicht hat sich ja mittlerweile jemand erbarmt und was ins Netz gestellt.

Gruß, Klexy
(Hausfrau und Onkel)
 
  • #8
Ich verzeihe Dir ja die HAusfrau ;o) :-*

mit Pivot tu ich mich richtig schwer :eek:(( mit Hausarbeit übrigens auch. !!

aber es hat geklappt :eek:) allerdings so ohne Anleitung wäre es nix geworden.

dank Euch

Gruss
anja
 
  • #9
Erhellendes zu Pivot gibt es bei Herbers Excel-Forum. Das ist zwar ein sehr spezielles Forum für eher Fortgeschrittene, aber zwischen den Zeilen kann man immer wieder was lernen. Da hab ich so manches gefunden. Leider gibt es da kein thematisches Inhaltsverzeichnis. Gib in Google einfach Pivot und Herbers ein.

Schau auch mal .
 
Thema:

Excel Auswertung

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.965
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben