Hallo Joh@nn
ich kann Dir eigentlich nur wenig Hoffnung auf eine Lösung machen. Das Problem ist die Bedingte Formatierung, die schlecht per VBA ausgewertet werden kann.
Gruß Hajo
Hallo Joh@nn
ich kann Dir eigentlich nur wenig Hoffnung auf eine Lösung machen. Das Problem ist die Bedingte Formatierung, die schlecht per VBA ausgewertet werden kann.
Gruß Hajo
Hallo Joh@hann,
ich fürchte das gibt ein Problem, manuell eingefärbte Zellen lassen sich nach der Hintergrundfarbe abfragen. Bei der bedingten Formatierung geht das meines Wissens leider nicht, das heißt, der zurückgegebene Wert entspricht dem der nicht gefärbten Zellen.
Gruß Klaus-Dieter
http://www.klaus-dieter-2000.de
(Excel und VBA speziell für Einsteiger)
Hallo Klaus Dieter
es ist nicht unmöglich Ich habe schon mal ein Code gesehen um eine Bedingung auszulesen und der war schon recht umfangreich und es gibt ja drei Bedingungen.
Gruß Hajo
gibt es da eine Möglichkeit?
Hallo Hajo,
das würde mich interessieren. Kannst Du dazu näheres mitteilen? Eine Abfrage nach Interior.ColorIndex liefert bei bedingter Formatierung und bei unveränderten Zellen immer den Wert -4142.
Gruß Klaus-Dieter
Hallo Joh@nn,
das hört sich doch gut an, Deine Tabelle enthält sicher ein Datum, da lassen sich dann Wochentage erkennen. Man müßte jetzt nur noch wissen, Motag bis Freitag, Montag bis Sonnabend, oder wie?
Gruß Klaus-Dieter
Hallo Klaus Dieter
ich habe mal folgenden Code in einem Forum gefunden und nicht weiter getestet.
Gruß Hajo
Hi Klaus-Dieter,
Jau Datum ist da.
in B4 wird der 01.01.2003 eingetragen, allerdings so formatiert (TT.)
In C4 steht =B4+1 auch (TT.)formatiert.
Die anderen Zellen genauso.
Samstag und Sonntage sollen nicht mitgezählt werden.(Feiertage auch nicht,aber das ist zuviel verlangt.
Gruß
Joh@nn
Hallo Joh@nn,
noch 'ne Frage: was genau willst Du zählen, und wo soll das Ergebnis stehen?
Ich habe da noch einen Vorschlag, auf meiner Internetseite gibt es unter Beispieltabellen (Excel) einen Urlaubsplaner zum Download. Wenn Du willst, lade Dir das Ding mal runter und sieh es Dir an. Möglicherweise kommt das dem, was Du suchst, schon recht nahe. Bei Bedarf würde ich Dir das anpassen.
Gruß Klaus-Dieter
http://www.klaus-dieter-2000.de
(Excel und VBA speziell für Einsteiger)
Hallo Hajo,
vielen Dank für's erste. Habe mir das mal kopiert und werde es ansehen.
Gruß Klaus-Dieter
>noch 'ne Frage: was genau willst Du zählen, und wo soll das Ergebnis stehen?
In B3
>Ich habe da noch einen Vorschlag, auf meiner Internetseite.
Habe mir was ähnliches gebastelt für über 100 Mitarbeiter ohne Macro (dürfen wir nicht verwenden).
Hat mir leider nicht weitergeholfen.
Mache mein 3. Bier auf,möglicherweise hilft das ;o))
Gruß
Joh@nn
Hallo Joh@nn
vielleicht hilft folgendes
272. Arbeitstage ausrechnen von Datum bis Datum
z.B. mit der Funktion Nettoarbeitstage. Du mußt aber vorher im Menü Extra-Add-In-Manager die Analyse-Funktionen aktivieren.
=NETTOARBEITSTAGE(A1;A30;{"13.4.01";"16.4.01"})
A1 =erster Tag
A30=letzter Tag
In den Klammern die Feiertage
lt Excel-Hilfe so: (A1, A2 die Datumangaben)
=NETTOARBEITSTAGE(A1;A2;{"24.12.1999";"03.01.2000"})
besser: lege einen Bereich fest(z.B."Feiertage") , in den du alle Feiertage schreibst und dann
=NETTOARBEITSTAGE(A1;A2;Feiertage)
Gruß Hajo
kopiere beide Macros in Modul, wenn Cursor auf gefärbte Zelle steht und MAcro Farbnummer startest erhälst du die Farbe-Nummer und mit Formel in Zelle wird gezählt
Option Explicit
Function Farbsumme(Bereich As Range, Farbe As Integer)
Application.Volatile ' damit bei änderung ausgeführt wird
Dim Zelle
Farbsumme = 0
For Each Zelle In Bereich
If Zelle.Interior.ColorIndex = Farbe Then
Farbsumme = Farbsumme + 1
End If
Next
End Function
Sub Farbnummer()
Dim i As Integer
i = ActiveCell.Interior.ColorIndex
MsgBox " Farbnummer " & i
End Sub
die Formel in Zelle lautet die letzte Zahl ist Farbnummer
=Farbsumme(A$1:A$60;40)der Bereich im Beispiel ist Zelle A1 - A 60
habe dies auch aus Forum
geri
Hallo Geri
Joh@nn hat leider erst in einem späteren Beitrag geschrieben, das keine Makro verwendet werden dürfen. Dieser Punkt war wohl nicht so wichtig.
Gruß Hajo