2016-03-21 3 views
2
=WORKDAY(42429, 1, A10:A15+A20:A22) 

Diese Formel funktioniert nicht in Excel und gibt #VALUE Fehler. Wenn ich nur einen Bereich für Urlaub Parameter verwenden - es funktioniert einfach gut:WORKDAY-Funktion in Excel akzeptiert keine Vereinigung von Bereichen für Urlaub Parameter

=WORKDAY(42429, 1, A10:A15) 

Beide Bereiche enthalten Zufallsdaten März (42429 ist Ultimo Februar).

Wie mache ich es mit separaten Bereichen arbeiten, so dass es beiden und nicht nur einer von ihnen Ehre machen würde?

Ich habe versucht, einen kleinen VBA-Skript erstellen Bereiche manuell kombinieren und dann aufgrund dieser Kombination als Ferien Parameter für die WORKDAY Funktion:

Function Test1(holidays As Range, timeOffs As Range) As Long() 
    Dim r() As Long 
    Dim h As Range, t As Range 
    Dim i As Integer 
    i = 1 

    ReDim r(1 To holidays.Cells.Count + timeOffs.Cells.Count) 

    For Each h In holidays.Cells 
     r(i) = h.Value 
     i = i + 1 
    Next h 

    For Each t In timeOffs.Cells 
     r(i) = t.Value 
     i = i + 1 
    Next t 

    Test1 = r 

End Function 

und dann

=WORKDAY(42429, 1, Test1(A10:A15, A20:A22)) 

Doch diese Erträge genau das gleiche Ergebnis.

Ich debuggte mein kleines Skript und ich kann sehen, dass zurückgegebene Objekt ist ein Array von Longs und es hat alle Werte, die ich will, aber Excel aus irgendeinem Grund mag dieses Skript und seine Ausgabe nicht und gibt mir immer noch # WERT-Fehler

Alle Hinweise werden sehr geschätzt!

Antwort

0

starten:

=WORKDAY(startDate,1,SMALL((Rng1,Rng2,Rng3),ROW(INDIRECT("1:"&COUNT(Rng1,Rng2,Rng3))))) 

SMALL kann mehrere Argumente für die Eingabe verarbeiten und gibt ein einzelnes Array als Ausgabe aus.

Dieses erhielt von here

+0

Das funktionierte wie ein Zauber !!! vielen Dank!!! +1. –

1

Ich würde verwenden =Workday.Intl(startDate,endDate,[Weekend],[Holidays]) Dokumentation here oder wenn das ist nicht dort aufgrund älterer Versionen =NETWORKDAYS(startDate,endDate,[Holidays]) Dokumentation Here Sie mit Ctl verwenden müssen kann eine Matrixformel bestätigen + Umschalt + Enter

+0

das ist genau das, was ich benutze. und es akzeptiert keine verschmolzenen Bereiche. –

Verwandte Themen