Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1564to1568
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zellen verbinden

Zellen verbinden
26.06.2017 09:57:14
Andrea
Guten Morgen,
ich benötige eure Hilfe für ein Programmierungsproblem in Excel.
Und zwar muss man auf meinem Excel-Dokument im Tabellenblatt 2 ein Datum mit Uhrzeit, Terminbeschreibung und Dauer eingeben. Dieser Termin wird dann im Kalender auf Tabellenblatt 1 automatisch beim richtigen Datum und der Uhrzeit eingefügt. Jetzt möchte ich aber wenn die Dauer 2 Stunden beträgt, dass die darunterliegenden 3 Zellen mit der, in der der Termin steht, verbunden werden. Da Kalender im halbstündlichem Takt. Zur Veranschaulichung im Anhang noch ein Bild des Kalenders (Tabellenblatt 1) und der Terminerfassung (Tabellenblatt 2).
Userbild
Userbild
Es wurde zwar bereits ein ähnliches Thema behandelt, aber leider hilft es mir nicht ganz weiter, da der VBA-Code zu meinem Problem nicht konkret passt und ich mit Programmierung selbst leider gar nichts am Hut habe.
Ich finde einfach keine Lösung und hoffe, dass mir jemand von euch weiterhelfen kann.
Herzlichen Dank schonmal :-)
Beste Grüße
Andrea

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen verbinden
26.06.2017 10:55:47
Matthias
Hallo
Zitat
Dieser Termin wird dann im Kalender auf Tabellenblatt 1 automatisch beim richtigen Datum und der Uhrzeit eingefügt
Wie? Per Formeln oder mit VBA?


Jetzt möchte ich aber wenn die Dauer 2 Stunden beträgt, dass die darunterliegenden 3 Zellen mit der, in der der Termin steht, verbunden werden
Nachgefragt!
Was soll verbunden werden, wenn der Termin 3 Std. dauert?
Vermutl. dann die darunterliegenden 5 Zellen mit der, in der der Termin steht?
Bsp. für D9 mit fester Zieladresse
Code in Tabelle2
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("D9")) Is Nothing And Target.Count = 1 Then If Target >= 2 Then With Tabelle1.Range("B18:C" & 18 + Target / 0.5) .UnMerge .Merge .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .MergeCells = True End With End If End If End Sub Das ist nur ein Bsp für eine Zelle.
Gruß Matthias
Anzeige
AW: Zellen verbinden
26.06.2017 11:03:54
Andrea
Zitat
Dieser Termin wird dann im Kalender auf Tabellenblatt 1 automatisch beim richtigen Datum und der Uhrzeit eingefügt
Wie? Per Formeln oder mit VBA?
Wird per "WENNFEHLER" Formel eingetragen.
Jetzt möchte ich aber wenn die Dauer 2 Stunden beträgt, dass die darunterliegenden 3 Zellen mit der, in der der Termin steht, verbunden werden
Nachgefragt!
Was soll verbunden werden, wenn der Termin 3 Std. dauert?
Vermutl. dann die darunterliegenden 5 Zellen mit der, in der der Termin steht?
Bsp. für D9 mit fester Zieladresse
Code in Tabelle2

Genau, wenn der Termin 2 Std. dauert, dann die Zelle in der der Termin steht und die darunterliegenden drei Zellen. Wenn der Termin 3 Std. dauert, dann die Zelle in der der Termin steht und die darunterliegenden fünf usw.
Beste Grüße
Andrea
Anzeige
also erledigt ...
26.06.2017 11:33:47
Matthias
Hallo
Hast Du mein Bsp probiert?
Hier noch eine Bsp.Mappe
https://www.herber.de/bbs/user/114484.xlsm
Das musst Du dann für Deine Datei selbst umsetzen, Du hast sie ja nicht hochgeladen
Gruß Matthias
AW: also erledigt ...
26.06.2017 12:19:01
Andrea
Probiere ich gleich aus und gebe Bescheid.
Sollte ich es nicht hinbekommen, hänge ich mal mein Dokument mit an.
Vielen lieben Dank schonmal :-)
Beste Grüße
Andrea
AW: also erledigt ...
26.06.2017 13:03:56
Andrea
Hallo Matthias,
jetzt hänge ich mein Dokument doch mal mit an.
Ich weiß nicht wie ich das mit dem Code direkt umsetzen soll. Vorallem weiß ich nicht wie ich das für alle Zellen realisieren soll.
Excel-Dokument: https://www.herber.de/bbs/user/114488.xlsm
Besten Dank :-)
Viele Grüße
Andrea
Anzeige
zu umfangreich und schwierig ...
27.06.2017 00:55:46
Matthias
Hallo Andrea
Der Terminkalender ist im Ganzen eine sehr gelungene Datei.
Gefällt mir gut.
Nach Sichtung der Dinge ist es viel zu umfangreich alle Eventualitäten abzudecken.
Schon allein wenn man einen Termin Zellformatmäßig als Verbundzellen darstellt, müsste sofort
nach einem KW-Wechsel und/oder eines Jahreswechsels alles wieder umformatiert werden.
UND!
beim Verbinden der Zellen per VBA-Code sind ja dann Deine Formeln weg.
Die müssten immer wieder per Code in die Zellen geschrieben werden.
Evtl. solltest Du Dein Vorhaben vergessen/abändern(wg.Verbundzellen)
und den Kalender einfach so nutzen wie er ist.
Gruß Matthias
Anzeige
AW: zu umfangreich und schwierig ...
27.06.2017 07:54:28
Andrea
Hallo Matthias,
vielen Dank erstmal :-)
Ich habe nun den Kalender so abgeändert, dass keine Verbundzellen mehr vorhanden sind. Wäre es jetzt möglich den VBA-Code so zu entwickeln damit alles funktioniert?
Anbei das neue abgeänderte Dokument: https://www.herber.de/bbs/user/114494.xlsm
Beste Grüße
Andrea
immernoch umfangreich und schwierig ...
27.06.2017 09:10:43
Matthias
Hallo
Du hast das falsch verstanden mit den Verbundzellen
Wenn Du in Spalte(B) die 4 Std. zu einer Verbundzelle formatieren willst
sind dannach Deine Index-Formeln futsch.
So vor dem Zellverbund:
Tabelle1

 AB
108:00 
118:30 
129:00 
139:30 
1410:00 
1510:30 
1611:00 
1711:30 
1812:00Termin
1912:30 
2013:00 
2113:30 
2214:00 
2314:30 
2415:00 
2515:30 
2616:00 
2716:30 
2817:00 
2917:30 
3018:00 

Formeln der Tabelle
ZelleFormel
B10=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A10;tblDate[DATUM UND UHRZEIT];0);3);"")
B11=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A11;tblDate[DATUM UND UHRZEIT];0);3);"")
B12=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A12;tblDate[DATUM UND UHRZEIT];0);3);"")
B13=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A13;tblDate[DATUM UND UHRZEIT];0);3);"")
B14=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A14;tblDate[DATUM UND UHRZEIT];0);3);"")
B15=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A15;tblDate[DATUM UND UHRZEIT];0);3);"")
B16=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A16;tblDate[DATUM UND UHRZEIT];0);3);"")
B17=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A17;tblDate[DATUM UND UHRZEIT];0);3);"")
B18=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A18;tblDate[DATUM UND UHRZEIT];0);3);"")
B19=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A19;tblDate[DATUM UND UHRZEIT];0);3);"")
B20=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A20;tblDate[DATUM UND UHRZEIT];0);3);"")
B21=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A21;tblDate[DATUM UND UHRZEIT];0);3);"")
B22=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A22;tblDate[DATUM UND UHRZEIT];0);3);"")
B23=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A23;tblDate[DATUM UND UHRZEIT];0);3);"")
B24=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A24;tblDate[DATUM UND UHRZEIT];0);3);"")
B25=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A25;tblDate[DATUM UND UHRZEIT];0);3);"")
B26=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A26;tblDate[DATUM UND UHRZEIT];0);3);"")
B27=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A27;tblDate[DATUM UND UHRZEIT];0);3);"")
B28=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A28;tblDate[DATUM UND UHRZEIT];0);3);"")
B29=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A29;tblDate[DATUM UND UHRZEIT];0);3);"")
B30=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A30;tblDate[DATUM UND UHRZEIT];0);3);"")


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
und so dannach (bei Eingabe von 2 Std.)
Tabelle1

 AB
108:00 
118:30 
129:00 
139:30 
1410:00 
1510:30 
1611:00 
1711:30 
1812:00Termin
1912:30
2013:00
2113:30
2214:00
2314:30 
2415:00 
2515:30 
2616:00 
2716:30 
2817:00 
2917:30 
3018:00 


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Wenn Du nun den Zellverbund wieder aufhebst, sind Deine IndexFormeln weg.
Außer in der obersten Zelle des Verbundes.
Tabelle1

 AB
1711:30 
1812:00Termin
1912:30 
2013:00 
2113:30 
2214:00 
2314:30 

Formeln der Tabelle
ZelleFormel
B17=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A17;tblDate[DATUM UND UHRZEIT];0);3);"")
B18=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A18;tblDate[DATUM UND UHRZEIT];0);3);"")
B23=WENNFEHLER(INDEX(tblDate;VERGLEICH(B$9+$A23;tblDate[DATUM UND UHRZEIT];0);3);"")


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Es müssten also auch die Formeln wieder reinkopiert werden.
Das ist mE vielzu aufwendig das alles abzudecken.
Eine End-/Komplettlösung werde ich Dir wahrscheinlich nicht bieten können.
Gruß Matthias
Anzeige
AW: immernoch umfangreich und schwierig ...
27.06.2017 09:37:13
Andrea
Ah ok, jetzt weiß ich was du meinst.
Hmm schade :-(
Trotzdem vielen lieben Dank für deine Unterstützung.
Beste Grüße
Andrea
hier mal noch ein Bsp. mit Zellmarkierung
27.06.2017 11:50:05
Matthias
Hallo Andrea,
hab Dir mal doch noch ein Bsp erstellt, in dem Du wenigstens die entsprechenden Zellen markiert bekommst.
Ich habe in Deiner Datei noch zwei Namen definiert.
1x Datum
1x Zeit
Diese Bereiche sind für die Schleife (For Each ...) in der ich die Zielzelle(n) markiere zuständig.
Das soll aber nur als kleines Bsp. dienen.
https://www.herber.de/bbs/user/114506.xlsm
Gruß Matthias
Anzeige
AW: zu umfangreich und schwierig ...
27.06.2017 09:34:47
Andrea
Hallo Matthias,
vielen Dank erstmal :-)
Ich habe nun den Kalender so abgeändert, dass keine Verbundzellen mehr vorhanden sind. Wäre es jetzt möglich den VBA-Code so zu entwickeln damit alles funktioniert?
Anbei das neue abgeänderte Dokument: https://www.herber.de/bbs/user/114494.xlsm
Beste Grüße
Andrea

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige