nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

Excel 2000: VBA-Funktionen und externe Daten

Von: Oliver Naumann (olinau@gmx.net) [Profil]
Datum: 22.12.2008 17:38
Message-ID: <giofo1$3kq$1@news.albasani.net>
Newsgroup: de.comp.office-pakete.ms-office
Hallo Welt,

in diesem Posting geht es um Excel 2000 oder 2003, und ich
habe nur Grundkenntnisse.

Ich habe eine Tabelle mit ziemlich vielen solchen Formeln:
=SUMME(
WENN(
(JAHR(xy.xls!calcBezahlt2)=FürJahr)*
(MONAT(xy.xls!calcBezahlt2)>=1)*
(MONAT(xy.xls!calcBezahlt2)<=3);
xy.xls!calcMWST2))

Insgesamt wird auf zehn verschiedene externe Mappen so zuge-
griffen. Das funktioniert auch so weit völlig problemlos. Nun
hatte ich gedacht, diese langen Zeilen sind kompliziert und
fehleranfällig, also schreibe ich eine einfache VBA-Funktion
(hier mit zusätzlichen Zeilenumbrüchen):

Function proQuartal(Bedingungen As Range, Jahr As Integer,
Quartal As Integer, Werte As Range)

Dim i As Integer, sum As Double

If Bedingungen.Count < Werte.Count Then
Exit Function
End If

For i = 1 To Werte.Count
If (Year(Bedingungen.Cells(i)) = Jahr) And
(Month(Bedingungen.Cells(i)) > (Quartal - 1) * 3) And
(Month(Bedingungen.Cells(i)) <= Quartal * 3) Then
sum = sum + Werte.Cells(i)
End If
Next i

proQuartal = sum

End Function

Aufruf dann über

=proQuartal('xy.xls'!calcBezahlt2; FürJahr; 1; 'xy.xls'!calcMWST2)

Das geht, allerdings nur dann, wenn ich die zehn externen
Mappen alle in Excel geöffnet habe. Das ist mir nun auch
wieder zu umständlich. Sicher gibt es dafür einen besseren
Lösungsansatz. Kann mir jemand was raten?

Grüße!
Oliver

[ Auf dieses Posting antworten ]