Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator Biber am 22.09.2009 um 18:52:34 Uhr
Beitrag von "Entwicklung" nach "Excel" verschoben.
GELÖST

Excel Zellen Hintergrundfarbe vergleichen

Frage Microsoft Microsoft Office

Mitglied: MrVain

MrVain (Level 1) - Jetzt verbinden

22.09.2009, aktualisiert 20:22 Uhr, 9810 Aufrufe, 3 Kommentare

Hallo,

ich möchte einen Bereitschafts-Kalender in Exel erstellen.

Auswahl der Mitarbeiter erfolgt per Zell-Farbe.

Nun möchte ich die Wochenenden gerne auswerten. Jeder Tag besitzt 3 Zellen.

1. Zelle= Datum
2. Zelle= wenn Wochenende - dann grau
3. Zelle= Mitarbeiter Farbe

Wie zähle ich nun die Anzahl der Wochenenden pro Mitarbeiter:

if Zelle=grau and zelle-rechts-daneben=blau then x=x+1

am besten als Funktion, wobei ich hier die Farben als Variablen hab...
01.
Die Gesamt-Tage habe ich so berechnet (FUNKTION) 
02.
 
03.
Function CountColor(rng As Range, iColor As Integer) 
04.
Dim rngAct As Range 
05.
Dim iCount As Integer 
06.
Application.Volatile 
07.
For Each rngAct In rng.Cells 
08.
If rngAct.Interior.ColorIndex = iColor Then 
09.
iCount = iCount + 1 
10.
End If 
11.
Next rngAct 
12.
CountColor = iCount 
13.
End Function
Wieso klappt dies nicht:
01.
Function CountWeekend(rng As Range, iColor As Integer) 
02.
Dim rngAct As Range 
03.
Dim iCount As Integer 
04.
Application.Volatile 
05.
For Each rngAct In rng.Cells 
06.
If rngAct.Interior.ColorIndex = iColor And ActiveCell.Offset(0, -1).Value.Interior.ColorIndex = "15" Then 
07.
iCount = iCount + 1 
08.
End If 
09.
Next rngAct 
10.
CountWeekend = iCount 
11.
End Function
Mitglied: Iwan
22.09.2009 um 15:11 Uhr
Wie postet man 100% falsch?
Nachdem man Google, Bing, Yahoo & Co., die FAQs und die Boardsuche erfolgreich ignoriert hat, erstellt man mindestens 5 neue Themen, alle in unterschiedlichen aber defintiv falschen Unterforen, möglichst mit kreativem Titel und undeutlichem Text, damit sich jeder etwas anderes vorstellen kann.

Farbe der aktiven Zelle ermitteln: click mich sanft
auch wenn der Beitrag dort über 5 Jahre alt ist, funktioniert es mit Excel 2003 trotzdem immer noch:
01.
Sub ZellFarbe() 
02.
   Farbe = ActiveCell.Interior.ColorIndex 
03.
End Sub
Bitte warten ..
Mitglied: MrVain
22.09.2009 um 15:54 Uhr
Dies ist mir bekannt !

Es geht mir eher darum:

if Zelle=grau and zelle-rechts-daneben=blau then x=x+1
Bitte warten ..
Mitglied: MrVain
22.09.2009 um 16:43 Uhr
Habs hinbekommen:

01.
Function CountWeekend(rng As Range, iColor As Integer) 
02.
Dim rngAct As Range 
03.
Dim iCount As Integer 
04.
    Application.Volatile 
05.
    For Each rngAct In rng.Cells 
06.
      If rngAct.Interior.ColorIndex = "15" And rngAct.Offset(0, 1).Interior.ColorIndex = iColor Then 
07.
        iCount = iCount + 1 
08.
      End If 
09.
    Next rngAct 
10.
    CountWeekend = iCount 
11.
End Function

[Edit Biber] Codetags ergänzt [Edit]
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
VB for Applications
gelöst Excel VBA Eine oder mehrere Zellen Verschieben (2)

Frage von batchnewbie zum Thema VB for Applications ...

Microsoft Office
gelöst Excel 2010 Zellen mit bestimmten Inhalt mit Makro formartierten (5)

Frage von packmann2016 zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...