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
GELÖST

VBA Code für eine Roadmap

Frage Entwicklung VB for Applications

Mitglied: AntonH

AntonH (Level 1) - Jetzt verbinden

02.10.2013, aktualisiert 11.10.2013, 2450 Aufrufe, 23 Kommentare

Hallo zusammen,

ich benötige für ein Projekt einen Excel Kalender als Roadmap.

Ich werde noch ein Bild einfügen damit man es besser verstehen kann.

Und zwar möchte ich, wenn man einen Namen für das Projekt eingibt und dann die Quartale (Dauer) eingibt z.B.

Test Q1/14 - Q2/15

soll die sich die dahinter befindlichen Feld in einer Farbe färben von Q1/14 - Q2/15!

3070be17357fe749e47ee1caab767dec - Klicke auf das Bild, um es zu vergrößern

Das Bild zeigt wie es fertig aussehen soll.

ich möchte also prüfen welche Werte im Feld (Start) und im Feld (End) stehen und mit hilfe dieser Werte eine fabige Makierung dahinter!

Und jetzt brauch ich bitte Hilfe!
Mitglied: MoeSys
02.10.2013 um 11:36 Uhr
Hi Anton,

da reicht doch die im Excel integrierte Bedingte Formatierung!!

LG
Moe
Bitte warten ..
Mitglied: colinardo
02.10.2013 um 12:22 Uhr
Hallo AntonH,
wie MoeSys schon schreibt reicht dafür eine bedingte Formatierung auf Basis einer Formel. Anhand deines Bildes lautet die Formel in der bedingten Formatierung folgendermaßen:
=UND(WERT(RECHTS($C3;2)&TEIL($C3;2;1))<=WERT(RECHTS(E$2;2)&TEIL(E$2;2;1));WERT(RECHTS($D3;2)&TEIL($D3;2;1))>=WERT(RECHTS(E$2;2)&TEIL(E$2;2;1)))
Du markierst also den Bereich wo die Balken erscheinen sollen, wählst dann Bedingte Formatierung > Neue Regel > "Formel zur Ermittlung ..." und fügst die obige Formel ein und setzt du dort noch mit "Formatieren" eine Hintergrundfarbe für die Zelle.

Grüße Uwe
Bitte warten ..
Mitglied: AntonH
02.10.2013 um 13:02 Uhr
Genau, ich will den bereich nicht makieren müssen. Das soll Excel selber machen ich will bei Start z.B. Q2/14 und Ende z.B. Q3/15 rein schreiben und Excel dann genau diesen Bereich fabig makieren. ich will da nur die zahlen rein schreiben sonst nix!!!
Bitte warten ..
Mitglied: colinardo
02.10.2013, aktualisiert um 13:05 Uhr
da hast du mich falsch verstanden, du legst hier nichts fest sondern Excel formatiert die Zellen entsprechend deiner Eingaben in Spalte C und D... deswegen heißt es ja "bedingte" Formatierung in die Zellen musst du nichts reinschreiben !!!
Bitte warten ..
Mitglied: colinardo
02.10.2013 um 13:07 Uhr
Hier ein Demo-Dokument zur Veranschaulichung -> Download
Bitte warten ..
Mitglied: AntonH
02.10.2013 um 13:07 Uhr
Und wo muss ich die bedingte Formatierung hinmachen? Ich hab des grad mal ausprobiert und leider ist nix passiert!
muss ich den gesamt Bereich E bis T Makieren an welches Feld muss ich die Formatierung binden?
Bitte warten ..
Mitglied: AntonH
02.10.2013 um 13:08 Uhr
Kann ich leider nicht übers firmen netz laden
Bitte warten ..
Mitglied: colinardo
02.10.2013 um 13:13 Uhr
Zitat von AntonH:
Kann ich leider nicht übers firmen netz laden

6f231bd05063e7a01aac53f8c7454330 - Klicke auf das Bild, um es zu vergrößern
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 08:56 Uhr
Ich möchte das Thema nochmal neu aufgreifen, da ich irgendwie immer noch nicht zureckt komme.


3070be17357fe749e47ee1caab767dec - Klicke auf das Bild, um es zu vergrößern


Hier ist nochmal das Bild wie es fertig aussehen soll! Ich versuch auch mal das Excel hochzuladen
Bitte warten ..
Mitglied: colinardo
11.10.2013, aktualisiert um 09:37 Uhr
Ich denke ich hab Dir doch alles geliefert, runterladen kannst du das Demo-Dokument doch mal zu Hause wenn du nicht in der Firma bist oder ? Ich denke mehr als das kann man nicht für dich tun ...

Grüße Uwe
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 09:43 Uhr
Hi Uwe,

ich bin dir sehr dankbar für deine schnell Antwort.
Bei mir tut sich leider gar nix wenn dich den Bereich den du im Bild angegeben hast markiere und dafür die Bedingung eingebe!

Woran kann das liegen?

ich meine es sieht ja alles genau so aus wie im Beispiel??


Kennst du dich auch mit VBA Programmierung aus?
Bitte warten ..
Mitglied: colinardo
11.10.2013, aktualisiert um 09:49 Uhr
Zitat von AntonH:
ich bin dir sehr dankbar für deine schnell Antwort.
Bei mir tut sich leider gar nix wenn dich den Bereich den du im Bild angegeben hast markiere und dafür die Bedingung
eingebe!

Woran kann das liegen?
Eventuell fügt dein Excel nach dem bestätigen der Formel, in diese noch zwei Anführungszeichen ein die das Problem verursachen, hatte das auch mal. Also öffne die Formel der bedingten Formatierung erneut und sehe nach ob Excel die Formel so formatiert hat:
="UND(......)"
wenn ja entfernst du die Anführungszeichen, danach sollte es also so aussehen:
=UND(.....)
Kennst du dich auch mit VBA Programmierung aus?
ja, klar damit geht das natürlich auch aber wieso umständlich wenn's so einfach geht.
Das Problem liegt definitiv noch bei dir ...

Grüße Uwe
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 09:54 Uhr
2d7ffff1c61fe24e3edd54b537e58b24 - Klicke auf das Bild, um es zu vergrößern

so hab ich das jetzt gemacht

Und es nochmal aufgemacht und geschaut
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 09:56 Uhr
2857850fd1ccabedba5852a6e5680351 - Klicke auf das Bild, um es zu vergrößern
Bitte warten ..
Mitglied: colinardo
11.10.2013, aktualisiert um 10:01 Uhr
mach mal das "Stop if true" raus .... und starte Excel mal neu...
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 10:00 Uhr
leider keine veränderung
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 10:03 Uhr
währe eine VBA lösung nicht doch leichter?

so ein Vergleich:

prüfe solang wie in Zeile zur Spalte A inhalt verfügbar ist.

When Start Wert gleich mit Wert in Zeitleist und Wert in Ende gleich mit Wert in Zeitleiste makiere diesen Bereich?
Bitte warten ..
Mitglied: colinardo
11.10.2013 um 10:17 Uhr
unverbesserlich ...., ich bau dir dazu was mit VBA...

Grüße Uwe
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 10:37 Uhr
des wäre klasse! Danke Danke DAnke
Bitte warten ..
Mitglied: colinardo
11.10.2013, aktualisiert um 11:32 Uhr
Füge diesen Code im VBA-Editor in das passende Worksheet ein.
Ich habe jetzt mal angenommen das die angegebenen Quartale in Zeile 3 bis 100 stehen, solltest du mehr benötigen musst du du den Range in Zeile 2 entsprechend anpassen. Auch die angegebenen Quartale in Zeile 2 habe ich mal auf Spalte 5-21 (also 4 Jahre) begrenzt, dies kann in Zeile 7 angepasst werden zusätzlich musst du dann in Zeile 25 die Nummer 21 auch entprechend ändern. Die Farbe die die markierten Zellen erhalten lässt sich in der Sub markiereZelle angeben.
01.
Private Sub Worksheet_Change(ByVal Target As Range) 
02.
    If Not Application.Intersect(Range("C3:D20"), Target) Is Nothing Then 
03.
        cellFrom = Cells(Target.Row, 3).Value 
04.
        cellTo = Cells(Target.Row, 4).Value 
05.
        If cellFrom <> "" And cellTo <> "" Then 
06.
            mark = False 
07.
            For i = 5 To 21 
08.
                If mark = True Then 
09.
                    If LCase(Cells(2, i)) = LCase(cellTo) Then 
10.
                        markiereZelle Cells(Target.Row, i) 
11.
                        mark = False 
12.
                    Else 
13.
                        markiereZelle Cells(Target.Row, i) 
14.
                    End If 
15.
                Else 
16.
                    If LCase(Cells(2, i).Value) = LCase(cellFrom) Then 
17.
                        mark = True 
18.
                        markiereZelle Cells(Target.Row, i) 
19.
                    Else 
20.
                        clearZelle Cells(Target.Row, i) 
21.
                    End If 
22.
                End If 
23.
            Next 
24.
        Else 
25.
                clearZelle Range(Cells(Target.Row, 5), Cells(Target.Row, 21)) 
26.
        End If 
27.
    End If 
28.
End Sub 
29.
 
30.
Sub markiereZelle(r As Range) 
31.
    r.Interior.Color = rgbBlue 
32.
End Sub 
33.
Sub clearZelle(r As Range) 
34.
    r.Interior.Pattern = xlNone 
35.
End Sub
Grüße Uwe
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 11:32 Uhr
ich hoffe du hälst mich nicht für total dumm, aber wenn ich es im VBA Editor bei dem passend Worksheet reinkopiere. und auf Play drücke, soll ich ein Makro auswähl, aber es gibt keins??
Bitte warten ..
Mitglied: colinardo
11.10.2013, aktualisiert um 11:35 Uhr
du brauchst nicht auf play drücken, die formatierung wird automatisch angewendet sobald du eine entsprechende Zelle im Range("C3:D100") im Worksheet änderst !!!
Bitte warten ..
Mitglied: AntonH
11.10.2013 um 11:35 Uhr
Du bist großartig Uwe!
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Microsoft Office
Kreuztabelle Access + VBA Code (7)

Frage von Dr.Cornwallis zum Thema Microsoft Office ...

Datenbanken
gelöst Access Report per Email versenden, hat jemand zufällig einen Code dafür(VBA) (7)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

VB for Applications
gelöst VBA-Makro verschwindet nach Speichern (5)

Frage von lupi1989 zum Thema VB for Applications ...

Erkennung und -Abwehr
Port 7547 SOAP Remote Code Execution Attack Against DSL Modems Internet Storm Center (5)

Link von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (10)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...