Excel: Hilfe bei zu langer Formel gesucht

  • #1
C

CiHViRuS

Bekanntes Mitglied
Themenersteller
Dabei seit
24.11.2001
Beiträge
235
Reaktionspunkte
0
Hallo Leute,

habe hier eine Formel die für Excel 2003 etwas zu lang ist. Vielleicht kann mir da jemand helfen die zu kürzen, bzw. hat ne andere Lösung für mich parat.
Hier erstmal die Formel:

=WENN($B$2=Puten;SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$G$16:$G$616)+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$G$16:$G$616);WENN($B$2=Junghennen;SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$H$16:$H$616)+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$H$16:$H$616);WENN($B$2=Enten;SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$I$16:$I$616)+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$I$16:$I$616);WENN($B$2=Gänse;SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$J$16:$J$616)+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$J$16:$J$616);WENN($B$2=Broiler;SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$K$16:$K$616)+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$K$16:$K$616);WENN($B$2=Suppenh. l.;SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$N$16:$N$616)+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$L$16:$L$616);WENN($B$2=Suppenh. g.;SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$O$16:$O$616)+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$M$16:$M$616);0)))))))

Das fettgedruckte passt nicht mehr rein, wird aber gebraucht.

Ich habe quasi in 2 Dateien jeweils ein Tabellenblatt mit Dropdown-Feld (Puten, Gänse u.s.w.) Dateien sind identisch, sollen aber unterschiedliche Werte aus 2 Dateien aufnehmen und mit dieser Formel aufsummieren.

Layout:
Dropdownfeld (Puten)
Kunde1 Kunde2 Kunde3
Januar
...
Juli 6

Datentabelle1: Tabellenname(Juli)

Tag Kunde Puten Gänse Broiler ......
05 Kunde1 2 5 7 ......



Datentabelle2: Tabellenname(Juli)
Tag Kunde Puten Gänse Broiler ......
08 Kunde1 4 1 1 ......

Hoffe ich hab es einigermaßen erklären können was ich brauche.
Danke schon mal für eure Hilfe!

Gruß
Rene
 
  • #2
Hallo CiHViRuS,

Als man könnte in der Mappe für interne Bereiche Namen definieren und dann einsetzen:

z.B.
Juli_F für Bereich Juli!$F$16:$F$616
Juli_G für Bereich Juli!$G$16:$G$616
Juli_H ...

Auch in der externe Mappe Kassenbuch.xls kann man so vorgehen.

Den Namen Kassenbuch.xls könnte man in Kb.xls ändern/kürzen.

Wenn das alles nicht ausreicht, könnte man auch einen internes Makro erstellen, dass< dann die Formeln abfährt.

Gruß Matjes :)
Code:
=WENN($B$2=Puten;
 SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$G$16:$G$616)
+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$G$16:$G$616);
 WENN($B$2=Junghennen;
 SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$H$16:$H$616)
+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$H$16:$H$616);
 WENN($B$2=Enten;
 SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$I$16:$I$616)
+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$I$16:$I$616);
 WENN($B$2=Gänse;
 SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$J$16:$J$616)
+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$J$16:$J$616);
WENN($B$2=Broiler;
 SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$K$16:$K$616)
+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$K$16:$K$616);
WENN($B$2=Suppenh. l.;
 SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$N$16:$N$616)
+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$L$16:$L$616);
WENN($B$2=Suppenh. g.;
 SUMMEWENN(Juli!$F$16:$F$616;B$4;Juli!$O$16:$O$616)
+SUMMEWENN([Kassenbuch.xls]Juli!$F$16:$F$616;B$4;[Kassenbuch.xls]Juli!$M$16:$M$616);0)))))))
 
  • #3
vielen dank für den tip, werde es nachher gleich mal testen. :1
 
  • #4
klappt prima. stehe jetzt nur leider vor dem nächsten problem, nämlich das die kassenbuch.xls für die auswertung geöffnet sein muss. :-(
gibts da irgendwas was man machen kann damit die automatisch geöffnet wird oder das die werte auch so geholt werden?

PS: was komisch ist, bei openoffice liest er die daten aus, obwohl die datei nicht geöffnet ist. ?:)
 
  • #5
Ja kann man ;D

Folgendes Makro in Diese Arbeitsmappe einfügen. Die Konstanten anpassen.
Dann wird mit Öffnen dieser Mappe auch das Kassenbuch geöffnet, wenn es noch nicht geöffnet ist.

Gruß Matjes :)

Code:
Private Sub Workbook_Open()
 
 Const cPATH_Kassenbuch = D:\01_Test
 Const cNAME_Kassenbuch = Kassenbuch.xls

 Dim wb As Workbook
 Dim bGeoeffnet As Boolean
 
 For Each wb In Workbooks
  If wb.Name = cNAME_Kassenbuch Then bGeoeffnet = True: Exit For
 Next
 
 If Not bGeoeffnet Then
  Workbooks.Open Filename:=cPATH_Kassenbuch & Application.PathSeparator & cNAME_Kassenbuch
 End If
AUFRAEUMEN:
 Set wb = Nothing
End Sub
 
  • #6
super, dankeschön!
 
Thema:

Excel: Hilfe bei zu langer Formel gesucht

ANGEBOTE & SPONSOREN

Statistik des Forums

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